Entwickler-Ecke

Datenbanken - Wie kommt man an den SQL-Code ran??


Andi1982 - Mi 14.05.03 19:27
Titel: Wie kommt man an den SQL-Code ran??
Hallo,
bin auf dem Gebiet Datenbanken im privaten bereich absolutter Anfänger. Ich führe folgenden Insert in meiner DB durch:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
procedure TForm1.Button1Click(Sender: TObject);
var Id: Integer;
    Interpret, Titel, Rubrik: String;
begin
Interpret := QuotedStr(Edit1.Text);
Titel := QuotedStr(Edit2.Text);
Rubrik := QuotedStr(Edit3.Text);

query1.SQL.Text := 'INSERT INTO lieder.db VALUES ' +
             ' ( 1,' + Interpret + ',' + Titel + ',' + Rubrik + ')';
query1.ExecSQL;
end;


Jetzt würde ich gerne Abfrage ob der Insert erfolgreich war oder nicht. Im Geschäft an einer DB2 Datenbank hab ich immer den SQL-Code in einer Variablen 'Sqlcode' zur Verfügung. Aber wie frage ich das hier ab? Hab die Table mit der Datenbankoberfläche erstellt die bei Delphi 6 Enterprise dabei war!

Danke, Andi

Moderiert von user profile iconUGrohne: Code-Tags durch Delphi-Tags ersetzt (musste einfach sein :wink:)


Horst - Mi 14.05.03 19:48

Hallo Andi,

verstehe ehrlich gesagt Deine Frage nicht ganz. Um zu sehen was in der Datenbank gelandet ist schaut man am besten mit einem FrontEnd-Tool nach, oder Du setzt in einen dbgrid einen "SELECT"-Befehl ab. Das ist SQL-Standard. Kann es sein dass Du Dich erstmal mit der SQL-Syntax
vertraut machen musst.. :roll:

Hoffe ich konnte dir trotzdem irgendwie weiterhelfen.

Gruß

Horst
:wave:


Andi1982 - Mi 14.05.03 19:51

Ok, angenommen ich würde statt nem Insert nen Select machen, wie würde ich dann sehen ob der Sql-code 100 oder 0 ist? Das kann doch nicht sein dass das in Delphi niemand interessiert.

Es kann ja auch passieren dass ein indexfehler auftritt beim insert und dann das programm nen fehler bringt. Das muss man doch abfangen können.


bis11 - Mi 14.05.03 21:07

Meinst Du, wenn Du einen SQL-Befehl an die Datenbank absendest und dieser SQL-Befehl aus irgendeinem Grund nicht ausgeführt werden kann, weil ein Wert oder Option, das willst Du abfangen ?


Andi1982 - Do 15.05.03 06:58

Ja so in der Richtung. Also immer wenn ein datenbank zugriff erfolgreich war ist der SQL-Code normalerweise = 0. Wenn keine Row der entsprechenden kriterien vorhanden war ist er auf 100 usw.... Vielleicht macht man das ja in Delphi auch einfach nicht, aber bisher war ich s halt so gewöhnt von Assembler, Cobol, Pl1, Rexx und sogar php.