Seite 1 von 1
sqlite3
Verfasst: 27.09.2006 12:58
von sobi
Man man... bin hier echt mit folgendem Problem am verzweifeln:
Habe mir PBOSL runtergeladen und möchte mit den SQLite - Funktionen arbeiten.
Allerdings bringe ich es nicht fertig aus einer Tabelle Daten aus zu lesen...
Kann mir bitte bitte jemand mit ein paar codeschnippseln auf die Sprünge helfen? (DB erstellen funktioniert)
Danke + Grüße,
Simon
Verfasst: 27.09.2006 13:03
von Karl
Hallo,
vielleicht fehlt dir die SQLite3.dll?
Ansonsten hier ein kleines Tut:
http://www.network-gui.de/PB-Wiki/PureBasicDB.pdf
Gruß Karl
Verfasst: 27.09.2006 13:10
von sobi
Karl hat geschrieben:Hallo,
vielleicht fehlt dir die SQLite3.dll?
Danke Karl, werd mir gleich mal das Tut durchlesen - die SQLite3.dll fehlt mir nicht...
Verfasst: 27.09.2006 13:16
von sobi
Woran liegt es, dass ich bei der Abfrage:
SQLite3_GetTable() immer eine Fehlermeldung bekomme? [...is not a funktion...]
Code: Alles auswählen
sDB.s = "einnahmen.db"
dbHandler = SQLite3_CreateDatabase(sDB, 1)
If dbHandler = 0
MessageRequester("SQLite3-Demo", SQLite3_GetLastMessage())
End
EndIf
; Create test-table to fill with data
sSQL.s = "Create Table geldeingang (fld1, fld2)"
SQLite3_Execute(sSQL, dbHandler)
MessageRequester("", SQLite3_GetLastMessage())
sSQL.s = "Insert Into geldeingang (fld1, fld2) Values ('1','2')"
sel.s = "Select * From geldeingang"
MessageRequester("", SQLite3_GetLastMessage())
dbopen=SQLite3_OpenDatabase("einnahmen.db")
MessageRequester("", SQLite3_GetLastMessage())
Debug SQLite3_GetTable(sel,0,0,dbopen)
Verfasst: 27.09.2006 13:17
von bobobo
Verfasst: 27.09.2006 13:23
von Karl
Gibt es wohl gar nicht, obwohl in der Hilfe deklariert.
Wenn du einen Tabellennamen suchst, wäre das wohl geeignet:
Code: Alles auswählen
sSQL.s="SELECT name FROM sqlite_master WHERE type='table'"
(entnommen aus useful_functions.pb der PBOSL-Examples-SQLITE3)
Dann wie gewohnt auswerten.
Gruß Karl
Verfasst: 27.09.2006 13:28
von ts-soft
>> SQLite3_GetTable() immer eine Fehlermeldung bekomme? [...is not a funktion...]
GetTable wurde durch die Recordsets ersetzt, die Hilfe wurde aber bisher
nicht aktualisiert, bzw. mir liegt keine neue Version vor... Entweder in den
Examples ein wenig wühlen, oder den Source anschauen. Oder den Tipp von
3bo nutzen
Verfasst: 27.09.2006 14:11
von sobi
Na prima...
also so richtig schlau bin ich noch nicht geworden: Im Moment sieht es so aus:
Code: Alles auswählen
Structure s_RecordSet
BOF.l
EOF.l
Handle.l
Rows.l
Cols.l
CurrentPos.l
sValue.s
EndStructure
RS.s_RecordSet
If SQLite3_InitLib("sqlite3.dll") = #False
MessageRequester("SQLite3-Demo", SQLite3_GetLastMessage())
End
EndIf
Handle.l=SQLite3_OpenDatabase("einnahmen.db")
sql.s = "Select * From geldeingang"
If SQLite3_GetRecordset(sql, dbHandle, @RS )
If rs\handle
While rs\eof = 0
If SQLite3_GetRecordsetValueByName("fld1", @RS)
Debug RS\sValue
Else
MessageRequester("", SQLite3_GetLastMessage())
EndIf
SQLite3_RecordsetMoveNext(@RS)
Wend
Else
MessageRequester("SQLite3-Demo", SQLite3_GetLastMessage())
EndIf
EndIf
Der Fehler lautet Wrong DBdbhandle - kann jemand damit was anfangen?
Verfasst: 27.09.2006 14:16
von Kiffi
das Handle, dass Du bei SQLite3_OpenDatabase() bekommst,
musst Du dann natürlich auch an SQLite3_GetRecordset() übergeben
Grüße ... Kiffi
Verfasst: 27.09.2006 14:28
von sobi
Kiffi hat geschrieben:das Handle, dass Du bei SQLite3_OpenDatabase() bekommst,
musst Du dann natürlich auch an SQLite3_GetRecordset() übergeben
Grüße ... Kiffi
Danke danke danke...