Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi SQLite und Sonderzeichen (https://www.delphipraxis.net/104844-sqlite-und-sonderzeichen.html)

holle 11. Dez 2007 20:10

Datenbank: SQLite • Version: 3 • Zugriff über: Simple Delphi Wrapper for SQLite 3

SQLite und Sonderzeichen
 
Ich benutze den "Simple Delphi wrapper for SQLIte 3" um ID3-Informationen meiner MP3s in meine SQLite 3 Datenbank einzufügen. Das funktioniert soweit ganz gut, nur bekomme ich bei Sonderzeichen wie " ( ) Probleme. Diese Zeichen werden in die SQL-Sytax eingearbeitet, wodurch der SQL-Befehl nicht mehr funktioniert. Wie kann ich das Problem beseitigen?
Delphi-Quellcode:
sSQL := 'INSERT INTO Tracks (Id, Artist, Album, Track, QuotedStr(Title), Path) VALUES (' + inttostr(i) + ', "' + Id3v2Tag.Artist + '", "' + Id3v2Tag.Album + '", ' + Id3v2Tag.Track + ', "' + Id3v2Tag.Title + '", "' + test.strings[i] + '")';
Danke,
Marcel

DeddyH 11. Dez 2007 22:22

Re: SQLite und Sonderzeichen
 
1. Was hat QuotedStr in SQL zu suchen?
2. Parametrisiere Deinen QueryString.
Delphi-Quellcode:
sSQL := 'INSERT INTO Tracks (Id, Artist, Album, Track, Title, Path) VALUES (:lauf, :artist,:album,:track,:title,:wasweissich)';
Query.SQL.Text := sSQL;
Query.ParamByName('lauf').AsInteger := i;
Query.ParamByName('artist').AsString := Id3v2Tag.Artist;
Query.ParamByName('album').AsString := Id3v2Tag.Album;
Query.ParamByName('track').AsInteger := Id3v2Tag.Track;
Query.ParamByName('title').AsString := Id3v2Tag.Title;
Query.ParamByName('wasweissich').AsString :=test.strings[i];

holle 11. Dez 2007 22:56

Re: SQLite und Sonderzeichen
 
1. muss da irgendwie reingerutscht sein. ist natürlich quatsch.
2. das problem ist, dass der SQL Wrapper leider kein Query kennt. Ich bekomme immer die Meldung: Undefinierter Bezeichner

danke,
Marcel

DeddyH 11. Dez 2007 22:57

Re: SQLite und Sonderzeichen
 
Dann bliebe noch die Option über Format(). Ich kenne den Wrapper leider nicht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:55 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz