Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   CreateBlobStream bei Delphi XE3 liefert Fehler "Kein BLOB-Feld" (https://www.delphipraxis.net/171698-createblobstream-bei-delphi-xe3-liefert-fehler-kein-blob-feld.html)

p80286 21. Nov 2012 13:47

AW: CreateBlobStream bei Delphi XE3 liefert Fehler "Kein BLOB-Feld"
 
Nur so eine Idee

Gruß
K-H

Bernhard Geyer 21. Nov 2012 13:49

AW: CreateBlobStream bei Delphi XE3 liefert Fehler "Kein BLOB-Feld"
 
Zitat:

Zitat von p80286 (Beitrag 1192218)
Nur so eine Idee

Klar kann es sein da sich hier wieder irgendein Fehler neu eingeschlichen hat.
Aber es geht ja auch nicht mit (Binär-)Blobs soweit ich es gelesen habe.

HighBaer 22. Nov 2012 10:35

AW: CreateBlobStream bei Delphi XE3 liefert Fehler "Kein BLOB-Feld"
 
Hallo

Soweit ich es bisher beurteilen kann, scheint es wirklich auf einen (oder mehrere?) Fehler in Delphi XE3 hinauszulaufen. Ich habe mittlerweile diese Info
Zitat:

Please note: BDE blob field support is completely broken in the initial
release of Delphi XE3. This prevents many of the RB Demos from running.
We hope Embarcadero will address this issue soon.
im Embarcadero Discusson Forums https://forums.embarcadero.com/threa...threadID=76914 gefunden.

Zitat:

Zitat von Bernhard Geyer (Beitrag 1192198)
Zitat:

Zitat von HighBaer (Beitrag 1192184)
Ich habe mittlerweile festgestellt, dass die gleiche Fehlermedlung auch bei einem Memo-Feld kommt.

Hättest du den link richtig gelesen hättest du dir das sparen können.

Ich denke, dass ich den Link richtig gelesen habe und da war von "Zugriffsverletzrung" und "Access" die Rede. Daher habe ich das nicht mit dem Fehler "Kein BLOB-Feld" und der Zugriff per BDE gleichgesetzt.

Zitat:

Zitat von Bernhard Geyer (Beitrag 1192198)
Also wenn du unbedingt (noch mittelfristig) noch BDE haben willst bleib erst mal bei D7 und "entsorge" die BDE bevor du auf XE3 oder neuer umsteigst.

Geht leider nicht. :(

Zitat:

Zitat von Gollum (Beitrag 1192209)
Hallo,

was passiert, wenn Du TStream durch TBlobStream ersetzt?

Nichts. Warum sollte auch? TBlobStream ist schließlich von TStream abgeleitet.

Was einnen dann doch erstaunt ist, dass Code, der scheinbar bis XE2 funktioniert hat, plötzlich in der neusten Version nicht mehr funktionert. Man könnte doch annehmen, dass, wenn bezüglich der BDE nichts mehr weiterentwickelt wird, auch der entsprechende Code "in Ruhe gelassen wird".

Na ja, es sieht wohl so aus, dass ich wohl wirklich in den "sauren Apfel beißen muss" und nun ungeplant auch die Anwendung auf eine alternative DB umstellen muss. Denn zu warten ob - und wenn ja - wann der Fehler korigiert wird, dürfte keine Lösung sein. Blöd nur dass ich das von der Zeit nicht eingeplant hatte. :(

Danke auf jeden Fall für Eure Antworten.

Bernhard Geyer 22. Nov 2012 11:14

AW: CreateBlobStream bei Delphi XE3 liefert Fehler "Kein BLOB-Feld"
 
Zitat:

Zitat von HighBaer (Beitrag 1192336)
Was einnen dann doch erstaunt ist, dass Code, der scheinbar bis XE2 funktioniert hat, plötzlich in der neusten Version nicht mehr funktionert. Man könnte doch annehmen, dass, wenn bezüglich der BDE nichts mehr weiterentwickelt wird, auch der entsprechende Code "in Ruhe gelassen wird".

ich denke nicht der BDE-Code wurde geändert sondern ein Code auf dem die BDE-Pascal-Wrapper-Klassen zugreifen hat sich geändert.

Zitat:

Zitat von HighBaer (Beitrag 1192336)
Zitat:

Zitat von Bernhard Geyer (Beitrag 1192198)
Also wenn du unbedingt (noch mittelfristig) noch BDE haben willst bleib erst mal bei D7 und "entsorge" die BDE bevor du auf XE3 oder neuer umsteigst.

Geht leider nicht. :(

Wieso nicht? Was geht nicht mit D7 was du nur mit XE3 erledigen kannst?

hoika 23. Nov 2012 05:27

AW: CreateBlobStream bei Delphi XE3 liefert Fehler "Kein BLOB-Feld"
 
Hallo,

Was passiert, wenn du das FieldByName noch auf TBlobField castest ?

Gerade das hier gefunden.
Du brauchst aber die Quellen.

https://forums.embarcadero.com/threa...threadID=78430

Wenn man dort weiterliest, sieht man, dass doch am Code von DBTables was gemacht worden ist,
damit die Unit überhaupt erst mit XE3 kompiliert werden konnte.
Das gleiche Problem mit den TBytes hatte ich auch beim Umsetllen von Blob-Code von D2007 auf D2010.


Heiko

Mschmidt 14. Dez 2012 16:21

AW: CreateBlobStream bei Delphi XE3 liefert Fehler "Kein BLOB-Feld"
 
Ich weiss nicht ob's hilft, ich verwende zwar die UniDAC aber dass sollte nicht stören:


Delphi-Quellcode:
function getBlobAsStream(FieldName:string):TStream;
var
  Tblf : TBlobField;
  Query: TUniQuery;
...
          Tblf :=TBlobField(Query.FieldbyName(FieldName));
          result:= TMemoryStream.Create;
          Tblf.SaveToStream(result);
...
Ersetze mal TUniQuery mit TTable.
Mathias


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:39 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz