Entwickler-Ecke
Datenbanken - PrimaryKey mit TQuery und TZQuery(zeos)
Gwaineg - Do 18.08.05 14:23
Titel: PrimaryKey mit TQuery und TZQuery(zeos)
ich schreibe ein Programm zum synchronisieren einer Paradox-DB(local) mit einer MYSql-DB(online)
dafür brauch ich einen Befehl der mir den PrimaryKey der Tabellen angibt, also den Attributnamen des PrimaryKeys
ob das jetzt ein Befehl für meine TQuery oder TZQuery ist, ist eigentlich egal da sie ja dieselben Attributnamen haben
JRegier - Do 18.08.05 14:50
Titel: Re: PrimaryKey mit TQuery und TZQuery(zeos)
Gwaineg hat folgendes geschrieben: |
ich schreibe ein Programm zum synchronisieren einer Paradox-DB(local) mit einer MYSql-DB(online)
dafür brauch ich einen Befehl der mir den PrimaryKey der Tabellen angibt, also den Attributnamen des PrimaryKeys
ob das jetzt ein Befehl für meine TQuery oder TZQuery ist, ist eigentlich egal da sie ja dieselben Attributnamen haben |
Meinst du das AutoInc Feld schau mal hier mein Thread
http://www.delphi-forum.de/viewtopic.php?t=45505&highlight=
Gwaineg - Do 18.08.05 16:17
hmmmmm ...
ich versteh es irgendwie nicht ganz, hab jetzt einfach mal bei mir reinkopiert und es geht natürlich nicht:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| function TSL.test: string; var i:integer; idn:string; begin for i:=0 to qu2.FieldCount-1 do if(qu2.FieldByName(qu.Fields.Fields[i].FieldName).AsString = 'auto_increment')then idn:=qu2.Fields.Fields[i].FieldName; result:=idn; end; |
qu2 ist meine TZQuery
die funktion gibt nach dem aufruf nichts zurück
ich glaub das ist doch nicht das was ich brauche
JRegier - So 21.08.05 22:11
Gwaineg hat folgendes geschrieben: |
hmmmmm ...
ich versteh es irgendwie nicht ganz, hab jetzt einfach mal bei mir reinkopiert und es geht natürlich nicht:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9:
| function TSL.test: string; var i:integer; idn:string; begin for i:=0 to qu2.FieldCount-1 do if(qu2.FieldByName(qu.Fields.Fields[i].FieldName).AsString = 'auto_increment')then idn:=qu2.Fields.Fields[i].FieldName; result:=idn; end; |
qu2 ist meine TZQuery
die funktion gibt nach dem aufruf nichts zurück
ich glaub das ist doch nicht das was ich brauche |
Ich werd aus deinem Codebeispiel nicht ganz schlau! Ist qu2 bei dir die ZQuery? Und ließt du hier eine MySQL Datenbank aus?
Also das Bespiel das zu dem ich dir den Link gegeben habe ist speziel für MySQL!
MySQL hat folgende Felder:
-> Field - Type - Null - Key - Default - Extra - Collation - Privileges - Comment
in irgendeinem dieser Felder ist hinterlegt dass es Primäry key ist!
Für AutoInc siehts so aus:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41:
| var ZQuery : TZQuery; ZConnection : TZConnection; with ZConnection do begin Protocol := 'mysql...'; Database := 'test'; Hostname := 'localhost'; User := 'root'; Password := ''; Properties.Values['timeout'] := '5'; try Connect; except if(not Connected)then begin ShowMessage('Verbindung fehlgeschlagen!'); Exit; end; end; end; ZQuery.Connetion := ZConnection; ZQuery.SQL.Clear; ZQuery.SQL.Add('Show full columns from `Testtabelle`'); ZQuery.Open; ZQuery.First; while not ZQuery.Eof do begin if ZQuery.FieldByName('Extra').AsString = 'auto_increment' then begin AutoIncField := ZQuery.FieldByName('Field').AsString; Break; end; ZQuery.Next; end; |
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!