Entwickler-Ecke

Datenbanken - Warum tut er das ?


bis11 - Sa 17.08.02 22:10
Titel: Warum tut er das ?
Hallo,

ich habe folgendes Problem, ich führe folgende Befehle in einer Procedure aus :

Quelltext
1:
2:
3:
4:
5:
    nbDelete : begin
                 Query1.SQL.Clear;
                 Query1.SQL.Add('Delete from "D:\Temp\Kunden.DB" where Kundennummer = ''10''');
                 Query1.ExecSQL;
               end;


Die Befehle machen auch das was Sie sollen, nur wenn die Procedure abgearbeitet ist, kann ich nichtmehr mit der Datenbank arbeiten, ich kann über den Navigator nichtmehr navigieren oder einen neuen Datensatz hinzufügen. Ich verzweifel noch, könnt Ihr mir helfen ?


Steffer - Sa 17.08.02 23:50

Ganz einfach:
ExecSQL führt eine SQL Anweisung einfach nur aus. Nach deinem ExecSQL must du die SQL -Anweisung ändern:

Quelltext
1:
2:
3:
SQL.Clear;
SQL.Add('SELECT * from Datenbank');
SQL.Open;

Beachte dabei die Unterschiede zwischen ExecSQL und Open.
Zur Editierbarkeit von SQL-Mengen hier ein paar Tipps:
http://www.faqsen.de/find.jsp?FAQ=1;485448544850494951514952;2

Moderiert von user profile iconTino: Code-Tags hinzugefügt.