Einzelnen Beitrag anzeigen

hermannhass

Registriert seit: 23. Dez 2006
Ort: Nähe Las Palmas
69 Beiträge
 
#1

Fehler bei Blobfeldern mit DBExpress, BUG? (reproduzierbar)

  Alt 12. Okt 2007, 15:22
Datenbank: MS-SERVER • Zugriff über: dbx/ado
Folgenden gravierenden Fehler habe ich:

Umgebung:
Win XP-Prof, MS-SERVER, Delphi 2007-Ger (Build2600, SP2)
(auch auf einem anderen Rechner getestet)

Vorraussetzung:
MS-Server (hier auf Host "Buero"),
eine Datenbank(hier 'sqlwawi')
eine Tabelle(hier 'artikel') mit 3 Feldern:
Artnr ein Varchar (ein string) * unwichtig
Text ein Memo (gefüllt mit einem richtext) * unwichtig
image eine Image (eine Bitmapgrafik) * Wichtig

Ein Formular mit einem normalen TEdit('Artnr'), einem TRichEdit('richedit') und einem TImage('image')

DBExpress: SQLConnection und SQLDataset verknüpfen
und die Felder wie folgt aktivieren (per button)
Code:
 sqldataset1.close;
 sqldataset1.CommandText:=sqlcmd.text;
 sqldataset1.open;
 sqldataset1.first;
 artnr.Text:=sqldataset1.Fields[0].AsString;
 richedit.Text:=sqldataset1.Fields[1].AsString;
 image.Picture.Assign(sqldataset1.Fields[2]);

 // Zusätzlich *
 tblobfield(sqldataset1.Fields[2]).savetofile('c:\x.bmp');
ADO: adoConnection und adaDataset verknüpfen
und die Felder wie folgt aktivieren (per button)
Code:
 adodataset1.close;
 adodataset1.Connection:=adoconnection1;
 adodataset1.CommandText:=sqlcmd.text;
 adodataset1.open;
 adodataset1.first;
 artnr.Text:=adodataset1.Fields[0].AsString;
 richedit.Text:=adodataset1.Fields[1].AsString;
 image.Picture.Assign(adodataset1.Fields[2]);
Fazit[u]:
Per ADO werden alle Felder korrekt gefüllt, auch das image
Bei DBExpress wird das Image wird schwarz gefüllt! (alle anderen Felder ok)
(*) Auch eine Savetofile('x.bmp') des Tblobfields enthält kein Bitmap!



Ich wäre dankbar um eine Überprüfung.......D A N K E
Angehängte Dateien
Dateityp: zip testdbxqdo_795.zip (1,8 KB, 3x aufgerufen)
Entwickle SW mit Delphi 2006 und sql.
Lebe auf Gran Canaria.
  Mit Zitat antworten Zitat