Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Fehlermeldung beim SQL-Insert (https://www.delphipraxis.net/89474-fehlermeldung-beim-sql-insert.html)

fly_singapore 31. Mär 2007 17:35

Datenbank: MS-SQL-Server • Version: 2000 • Zugriff über: ODBC

Fehlermeldung beim SQL-Insert
 
Hallo Allerseits,

ich muss mich gerade mal vorstellen. Ich heisse Peter Steffens und beschäftige mich beruflich mit Datenbanken und den Zugriff auf diese. Vor einigen Jahren habe ich eine Anwendung entwickelt, die auf einer INFORMIX-Datenbank zugriff. Damals mit dem Delphi 3 . Diese Version habe ich wieder aus der Schublade rausgefischt um eine neue Anwendung zumindest so weit vorzubereiten, dass ich diese auf eine aktuelle Version weiterentwickleln kann.

Nun zum Problem:

Per SQL-Statement: INSERT INTO tbl_mig (ID) VALUES (12345) wollte ich einen neuen Datensatz anlegen.

hierzu der entsprechende Delphi-Code

Delphi-Quellcode:
...

sql := 'INSERT INTO tbl_mig (id) VALUES (12345)';

Query2.Close; { Abfrage schließen, wenn sie aktiv ist }
Query2.SQL.Clear; { aktuelle SQL-Anweisung löschen, wenn vorhanden }
Query2.SQL.Add(sql);
Query2.active := true;

...

Beim Ablauf der Routine trat folgende Fehlermeldung auf: "Fehler beim Erstellen des Cursor-Handle"
Komischerweise wird dennoch ein Datensatz an die Tabelle drangehängt und mit oben angegebenen Wert
beschrieben. Hat eine der Herren oder Damen Experten eine Lösung für dieses Problem..


Vielen Dank !!!!!!

Jelly 31. Mär 2007 17:38

Re: Fehlermeldung beim SQL-Insert
 
Hallo Peter,

erstmal herzlich Willkommen hier im Forum.

Zu deinem Problem:
Wenn du eine Query auf active setzt (bzw. Open aufrufst), so erwartet die Komponente eine Ergebnismenge in Form eines Datasets. Ein Insert Befehl liefert aber keine Menge, sondern führt einen Befehl aus. Nutze stattdessen:
Delphi-Quellcode:
Query2.ExecSQL() ;

fly_singapore 31. Mär 2007 17:51

Re: Fehlermeldung beim SQL-Insert
 
Hallo Jelly (Tom)

Vielen Dank für Dein Tip. :-D Es hat funktioniert. Ich habe auch irgendwann mal sowas gelesen, konnte es jedoch nicht einordnen. :roll: Nochmals vielen Dank !!!!! :bounce2:


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:21 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