Entwickler-Ecke
Datenbanken - EDataBaseError
enigma - Mi 30.10.02 21:40
Titel: EDataBaseError
Ich verwende eine SQLQuery-Komponente um auf eine Datenbank zuzugreifen
Quelltext
1: 2: 3:
| SQLQuery.SQL.Add('SELECT * FROM tabelle'); SQLQuery.Open; SQLQuery.First; |
Zur laufzeit bekomme ich dann den Fehler: Cursor not reseted.
Wie kann ich den Cursor reseten?
(Vorher führe ich eine SQL-Anweisungen mit ExecSQL aus)
LCS - Do 31.10.02 09:06
Hi
an dem Code ist erst mal nix auszusetzen. Poste doch mal welche DB du verwendest und welche SQL Anweisung du vorher ausführst.
Gruss Lothar
enigma - Do 31.10.02 09:10
Benutze MS SQL-Server 2000.
Vorher mach ich ein paar Insert und Delete Anweisungen die ich mit
ExecSQL ausführe
GuGl - Do 31.10.02 12:18
Hi enigma,
wird die query vorher geschlossen, und SQL.TEXT mit CLEAR
auf '' gesetzt ?
enigma - Do 31.10.02 14:21
also SQL.Clear mach ich nicht (ich dachte das geht automatisch)
und muss man auch nach ExecSQL die SQLQuery wieder Closen??
GuGl - Do 31.10.02 14:53
Nach execsql muß man nicht closen, da keine Ergebnismenge
vorhanden ist.
Wenn du mit dem SQL.ADD(...) arbeitest, solltest du immer vorher
den clear machen, oder direkt den SQL.TEXT := '...' benutzen.
Ich habe mir das so angewöhnt:
Quelltext
1: 2: 3: 4: 5:
| with query1 do begin close; sql.text := '.....'; open; // oder execsql end; |
das klappt auf jeden Fall
enigma - Do 31.10.02 16:33
danke hat gefunzt
nächstes problem:
Wenn ich ne SQLQuery auf eine Tabelle verwendet hab, und danach wieder für eine andere Tabelle benutzen will, findet der bei FieldValues keine Spalten der neuen Tabelle.
Wie grieg ich das hin??
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!