Nun dachte ich mir, ich mache mal meine ersten Versuche, eine Datenbank über das Netzwerk anzusprechen. Klappt aber bei mir nicht.
Ich habe mit dem Beispielcode angefangen.
Code: Alles auswählen
UseSQLiteDatabase()
Procedure CheckDatabaseUpdate(Database, Query$)
Result = DatabaseUpdate(Database, Query$)
If Result = 0
Debug DatabaseError()
EndIf
ProcedureReturn Result
EndProcedure
InitialPath$ = "C:\" ; anfänglichen Pfad für die Anzeige festlegen (kann auch leer sein)
Path$ = PathRequester("Bitte wählen Sie einen Pfad aus", InitialPath$)
If Path$
MessageRequester("Information", "Sie haben folgenden Pfad ausgewählt:"+Chr(10)+Path$, 0)
Else
MessageRequester("Information", "Der Requester wurde abgebrochen.", 0)
EndIf
a$=path$ ; Nur um den Pfad direkt auswählen zu können...
DatabaseFile$ = a$+"Database.sqlite"
If CreateFile(0, DatabaseFile$)
CloseFile(0)
If OpenDatabase(0, DatabaseFile$, "", "")
CheckDatabaseUpdate(0, "CREATE TABLE food (name CHAR(50), weight INT)")
CheckDatabaseUpdate(0, "INSERT INTO food (name, weight) VALUES ('apple', '10')")
CheckDatabaseUpdate(0, "INSERT INTO food (name, weight) VALUES ('pear', '5')")
CheckDatabaseUpdate(0, "INSERT INTO food (name, weight) VALUES ('banana', '20')")
If DatabaseQuery(0, "SELECT * FROM food WHERE weight > 7")
While NextDatabaseRow(0)
Debug GetDatabaseString(0, 0)
Wend
FinishDatabaseQuery(0)
Else
DatabaseError()
EndIf
CloseDatabase(0)
Else
Debug "Can't open database !"
EndIf
Else
Debug "Can't create the database file !"
EndIf
Die Datenbank wird geöffnet, aber die Select-Abfrage endet mit einem "Disk I/O Error".
Geht das generell nicht oder liegt hier bei mir das Problem?
Viele Grüße