![]() |
Datenbank: sql • Version: ? • Zugriff über: sqlconnection
Warum kommt eine exception?
Bin immer noch dabei an diesem Tutorial zu arbeiten:
![]() Dieser Code:
Delphi-Quellcode:
Führt zu einer Exception: EExternalException C06D007F
var
FSQLCommandText: String; FSQLDataSet: TDataSet; try SQLConnection1.Connected := True; FSQLCommandText := 'SELECT * FROM Buecher;'; SQLConnection1.Execute(FSQLCommandText, NIL, FSQLDataSet); Except On E: EDatabaseError Do ShowMessage(E.Message); end; Wenn ich anhalten klicke kommt dann ein Fenster Quelldatei nicht gefunden: delayhlp.cpp Wie kann ich das beheben? |
AW: Warum kommt eine exception?
Sieht so aus, als hätte die Datenbank mit Deinem SQL ein Problem.
Lass am Ende des Selects mal das Semikolon weg. Das ist eigentlich ein übliches Trennzeichen für mehrere Statements, die man per Batch ... aus 'ner Datei oder 'ner Datenbankoberfläche absetzen möchte. Bei 'nem einzelnen Statement (für ExecSQL ...) aber eher unüblich. |
AW: Warum kommt eine exception?
Hat leider nichts gebracht.
Muss ich vielleicht bei der sqlconnection noch etwas einstellen? TableScope oder ähnliches. die sqlite3.dll ist im Windowspfad und im Anwendungsordner. Leider sieht man nicht wie alt das Tutorial "SQLite3 mit Delphi und dbExpress" ist. Blöd wenn man lernen will und es geht nicht :( ![]() Kann mir jemand ein anderes sehr einfaches Tutorial empfehlen womit ich sqllite in einfachen Schritten lernen kann ohne ein Studium machen zu müssen?? SQL Datenbank habe ich erstellt, Daten kann ich auch eintragen aber nun möchte ich die Daten abfragen und auf einer Maps Karte anzeigen. |
AW: Warum kommt eine exception?
Hallo,
vielleicht muss das DataSet ja erst erzeugt werden? |
AW: Warum kommt eine exception?
Die Exception kommt z.B. auch dann, wenn die SQLITE3.DLL nicht zum verwendeten DBExpress-Treiber passt.
|
AW: Warum kommt eine exception?
Zitat:
Zitat:
Wie bekomme ich nun die Felder mit typ und allem aus meiner sql Datenbank in dieses TDataSet ? Oder ist das nicht nötig? Oder gibt es andere Möglichkeiten die Daten in meiner sql datenbank nacheinander abzufragen und auf einer Karte anzuzeigen? Das sollte doch auch mit sqlquery irgendwie funktionieren oder? Edit:// Habe es nun so versucht:
Code:
Gleiches Problem. externalexception ......
SQLBefehl :String;
begin sqlconnection1.Connected := true; SQLBefehl:='SELECT * FROM spawnpoints;'; try SQLQuery1.SQL.Text := SQLBefehl; SQLQuery1.Active := true; except on E: Exception do showmessage('Exception raised with message: ' + E.Message); end; Ich habe auch mal eine kleine neue Datenbank angelegt, gleiches problem :( Hier meine Parameter aus der sqlconnection: Driver Unit: Data.DbxSqlite Driver Package Loader: TDBXSqliteDriverLoader,DBXSqliteDriver230.bpl MetaDataPAckageLoader: TDBXSqliteMetaDataCommandFactory,DbxSqliteDriver23 0.bpl FailIfMissing: True Database: c:\eigene dateien\delphi_projekte\map\test99.db Was kann ich noch versuchen? |
AW: Warum kommt eine exception?
Endlich.... Habe alle sqlite3.dll gelöscht die ich irgendwo gefunden habe. Dann die aktuellen 32bit heruntergeladen, nur in systemwow64 kopiert und nun funktioniert alles einwandfrei. :-D
|
AW: Warum kommt eine exception?
In das Systemverzeichnis kopieren sollte man nicht machen. Lege die besser in das Verzeichnis deiner Anwendung.
Denn was, wenn ein anderes Programm die DLL in einer anderen Version benötigt? Wenn du später einen MSI-Installer erstellst, kümmert der sich darum (Stichwort Side-By-Side-Konfiguration), aber ohne Installer sollte man die DLLs dann in das Anwendungsverzeichnis legen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:41 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-2025 by Thomas Breitkreuz