Frage

Dieser Fehler zeigte, wenn ich auf eine leere Tabelle in MS SQL Server 2005 zu wählen versucht: „BOF oder EOF ist True oder der aktuelle Datensatz wurde gelöscht“. Ich habe verwendet TADOConnection und TADODataSet in Delphi 5 zu verbinden und abrufen Daten aus der Datenbank.

  Conn := TADOConnection.Create(nil);
  DataSet := TADODataSet.Create(nil);

  Conn.ConnectionString := 'Provider=SQLOLEDB.1;Password=sa;' +
                           'Persist Security Info=True;' +
                           'User ID=user;Initial Catalog=mydb;' +
                           'Data Source=MYPC\SQLEXPRESS;' +
                           'Use Procedure for Prepare=1;' +
                           'Auto Translate=True;Packet Size=4096;' +
                           'Workstation ID=MYPC;' +
                           'Use Encryption for Data=False;' +
                           'Tag with column collation when possible=False';
  Conn.LoginPrompt := False;
  Conn.Open;

  DataSet.Connection := Conn;
  DataSet.CommandText := 'SELECT * FROM MYTABLE';
  DataSet.Open;

  DataSet.Free;
  Conn.Free;

Gibt es eine Möglichkeit zu überprüfen, ob eine Datenbanktabelle ohne entstehen solche Fehler leer ist?

War es hilfreich?

Lösung

Dieser Fehler ist aufgetreten ursprünglich mit einem Update auf MDAC_TYP (bis 2,6 aus dem Gedächtnis). Nach einer alten Borland Beratungs „Das ist ein Fehler in dem SQL Server-Anbieter. Set CursorLocation = clUseClient um den Fehler zu beseitigen. "

Es war ein ADOExpress Patch von Borland , aber der Link doesn ‚t Arbeit. Embarcadero nun Gastgeber hier: ftp: //ftpd.embarcadero. com / pub / delphi / devsupport / Aktuelles / ADOExpress / d5adoupdate2.exe (Danke für den offiziellen Link Jeroen!)

Ich würde empfehlen, das Herunterladen und die Installation alle auf der Embarcadero Website aufgeführten Patches, vorausgesetzt, Sie können sie finden.

Andere Tipps

Laden Sie das ADO-Update für Delphi 5 hier: ftp: / /ftpd.embarcadero.com/pub/delphi/devsupport/updates/adoexpress/d5adoupdate2.exe

Vergewissern Sie sich, auch die regelmäßige Aktualisierung installiert ist:

Es gibt weiteres Updates (Corba, original ADO installieren) und Sprachen (Französisch, Deutsch), aber diese sollten Sie gehen bekommen.

Es kann auch sein verwendet, um ein http://info.borland.com/ devsupport / delphi / download_files / zlibupdate.zip , aber es ist nicht auf den ftpd-Server ist.

- jeroen

Es war lange Zeit AGOM aber ich erinnere mich, dass dieses Problem in Delphi 5 Entschlüssen von Delphi Update. Frühe Version hat ernsthafte Probleme mit ADO-Komponenten

P. S. Auch ich sehe, dass Ihr Code nicht typische Laufzeit Erstellung von Komponenten verwendet und nicht einige Container wie Datenmodul oder Formular verwenden (nicht gut in der Regel) für die visuelle Arbeit mit Komponenten. Auch manchmal nützlich laufen einfache Abfragen über adoConnection.execute. Wenn Sie keine visuellen Komponenten verwenden, die Handhabung von ADO-Cord-Objekt ist sehr ähnlich wie Delphi AdoDataset.

Da ich einen ganzen Tag dafür ausgegeben, hier ist ein wrap up von dem, was ich am Ende bin.

Delphi 5 Pro Installation mit ADO Express

  1. Deinstallieren Delphi 5, ebenfalls gelöscht Installationsverzeichnis
  2. Installieren Delphi 5 Pro (Ich habe nur eine deutsche Delphi Pro-Edition verfügbar)
  3. Installieren Delphi 5 Pro Update (ich die deutsche Update verwendet)
  4. Installieren Delphi 5 ADO Express
  5. Installieren Delphi 5 ADO Express-Update Pack 1
  6. Installieren Delphi 5 ADO Express-Update Pack 2

Und die Download-Links (vielen Dank wieder Jeroen Wiert Pluimers):

Delphi 5 Pro-Updates:

ftp://ftpd.embarcadero.com/pub /delphi/devsupport/updates/delphi5/D5ProUpdate.exe ftp://ftpd.embarcadero.com/pub/ delphi / devsupport / Aktuelles / Delphi5 / Deutsch / d5proupdate.exe

ADOExpress Update-Pack 1 und 2:

ftp://ftpd.embarcadero.com/pub /delphi/devsupport/updates/adoexpress/D5ADOUpgrade.exe ftp://ftpd.embarcadero.com/pub/delphi/ devsupport / Aktuelles / ADOExpress / d5adoupdate2.exe

Und für die Zukunft einige Screenshots auf die Download-Links (Groß- und Kleinschreibung) zu erstellen:

eingeben Bild Beschreibung hier

eingeben Bild Beschreibung hier

eingeben Bild Beschreibung hier

eingeben Bild Beschreibung hier

eingeben Bild Beschreibung hier

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top