Hallo Ihr Lieben!
Ich habe jetzt das erste mal mit einer Splite Abfrage ein Problem!
Beispiel:
Var Tag as string
Var rs as rowset
Tag=”Hallo Welt”
sq=“select * from Alben where Name=‘”+Tag’+“’”
rs=db.SelectSQL(sq)
Normalerweise funktionierte das immer!!!
Plötzlich wird das letzte Hochkomma einfach nicht angenommen. Somit schlägt die Abfrage fehl.
Was kann ich tun? Ich bin wirklich verzweifelt.
Da sind drei hochkomma, eins zu viel direkt nach Tag.
Hallo Christian!
Ja, Du hast recht, sorry ich bin etwas nervös
Ich habe das Hochkomma jetzt entfernt. Es sieht folgendermassen aus:
var sq as string
var level as integer
var rs as RowSet
Tag ist eineString-Variable
sq=“select * from Alben where Name=‘”+Tag+“’”
rs=db.SelectSQL(sq)
Level=rs.Column(“level”).IntegerValue
select * from Alben where Name='Hans
’
Das Hochkomma rutscht einfach in die nächste Zeile???
Hello @Michael_Dinse
Consider using a tool like https://sqlitebrowser.org/
It can help you find errors in SQL commands to sqlite
This compile:
Var Tag As String
Var sq As String
Var db As New SQLiteDatabase
Var rs As RowSet
Tag = "Hallo Welt"
sq="select * from Alben where Name=" + Tag
rs=db.SelectSQL(sq)
Probier doch mal eine etwas modernere Syntax:
rs = db.SelectSQL ("SELECT * FROM alben WHERE name = ?", Tag)
Das erspart die Mühe mit den diversen Hochkommata und härtet ausserdem die Abfrage gegen SQLInjections….
Edit: corrected syntax from SQLSelect to SelectSQL
2 Likes
Vielen Danke, Ihr Lieben.
Der Fehler lag, wie immer bei mir. Ich habe die variable Tag, dummerweise aus, einem Textfeld mit key=chr(13) übergeben.
Trotzdem, vielen Dank an alle!!!
Thomas Roemert:
db.SQLSelect
This API 1, so 7 years old while what op code shared is API2 (SelectSQL)
Nice screen shot for the eyes:
You’re right, I did correct the post.
1 Like