AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken CreateBlobStream bei Delphi XE3 liefert Fehler "Kein BLOB-Feld"

CreateBlobStream bei Delphi XE3 liefert Fehler "Kein BLOB-Feld"

Offene Frage von "Mschmidt"
Ein Thema von HighBaer · begonnen am 20. Nov 2012 · letzter Beitrag vom 14. Dez 2012
Antwort Antwort
Seite 1 von 2  1 2   
HighBaer

Registriert seit: 11. Aug 2008
Ort: Köln
8 Beiträge
 
Delphi 11 Alexandria
 
#1

CreateBlobStream bei Delphi XE3 liefert Fehler "Kein BLOB-Feld"

  Alt 20. Nov 2012, 16:29
Datenbank: Paradox • Version: 7 • Zugriff über: BDE
Hallo Leute!

Ich habe folgendes Problem: Es soll eine Anwendung die über die BDE auf eine Paradox-DB zugreift und unter Delph 7 erstellt wurde auf Delphi XE3 umgestellt werden. Von XE3 habe ich zunächst nur die Test-Version (Architekt ohne Sourcen) um zu sehen ob es überhaupt klappt. Nun erhalte ich beim Aufruf von CreateBlobStream die Fehlermedlung "Kein BLOB-Feld". Unter Delphi 7 läuft es mit der gleichen Tabelle korrekt. Das entsprechende Feld hat als "DataTye" auch "ftBlob", selbst die Umwandung zu TBlobField klappt. Ich habe es auch mit anderen Tabellen, die BLOB-Felder haben, ausprobiert: Immer das gleiche Ergebnis = Fehlermeldung.

Ist das eventuell ein Fehler in XE3? Wie gesagt, bei der Test-Version sind keine Sourcen dabei, die man zur Fehleranalyse nutzen könnte.

Noch ein paar Infos: Das Feld ist auf jeden Fall ein BLOB und NICHT leer! Die Tabelle ist offen, andere Felder können gelesen werden. (Ansonsten sollte auch eine andere Fehlermeldung kommen.)

Bitte nun kein Hinweis, dass die BDE veraltete ist und man besser eine andere DB nehmen sollte. Das weiß ich, aber hilft mir hier nicht konkret weiter, da zunächst mal mit der BDE weitergeaebeitet werden soll.

Für einen Tipp wäre ich dankbar.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.170 Beiträge
 
Delphi 10.4 Sydney
 
#2

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

  Alt 20. Nov 2012, 16:40
Also im Delphi-Forum hat jemand das gleich Problem gelöst indem er statt BDE ADOExpress/dbGo verwendet hat.

Evtl ist das ein bisher nicht gefixter Fehler in XE3 mit BDE.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#3

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

  Alt 20. Nov 2012, 18:04
Man sollte auch noch dabei bedenken, dass die BDE nicht mehr weiterentwickelt wird.

Edit : Ich empfehle hier auf eine andere Datenbank umzubauen.
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.170 Beiträge
 
Delphi 10.4 Sydney
 
#4

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

  Alt 20. Nov 2012, 19:24
Man sollte auch noch dabei bedenken, dass die BDE nicht mehr weiterentwickelt wird.
Er hat "nicht mehr weiterentwickelt" und "andere Datenbank" gesagt. Steinigt Ihn!
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#5

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

  Alt 21. Nov 2012, 05:30
Hallo,

zeig mal ein bisschen Code.


Heiko
Heiko
  Mit Zitat antworten Zitat
HighBaer

Registriert seit: 11. Aug 2008
Ort: Köln
8 Beiträge
 
Delphi 11 Alexandria
 
#6

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

  Alt 21. Nov 2012, 10:08
Hallo Leute,

zunächstmal Danke für die Antworten, die aber leider nicht weiterhelfen. Ich hatte ja geschrieben, dass ich weiß, dass die BDE nicht mehr weiterentwickelt wird. Mittelfristig werde ich da auch auf eine Alternative umschwenken, aber das ist im Moment (u.a. auch aus Zeitgründen nicht möglich). Ich bin aber davon ausgegangen, dass, wenn in XE3 die BDE noch unter stützt wird, das auch vollständing und korrekt der Fall ist. Die Methode wird auch in der Hilfe beschrieben, also sollte man doch davon ausgehen, dass das auch funktioniert...

An der BDE oder der Tabelle kann es nicht liegen, denn wie gesagt klappt da der Zugriff korrekt. Ich habe mittlerweile festgestellt, dass die gleiche Fehlermedlung auch bei einem Memo-Feld kommt.

Ich weiss zwar nicht was da der Code weiterhelfen soll, aber wenn's hilft:
Delphi-Quellcode:
procedure LeseBitmap(Table: TTable);
var
  Stream : TStream;
begin
  with Table do begin
    Stream := CreateBlobStream(FieldByName('Bitmap'),bmRead); // Die Excception kommt an dieser Stelle!
    try
      FBitmap.LoadFromStream(Stream); // FBitmap : TBitmap
    finally
      Stream.Free;
    end; {try .. finally}
  end; {with}
end; {LeseBitmap}
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.170 Beiträge
 
Delphi 10.4 Sydney
 
#7

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

  Alt 21. Nov 2012, 10:57
Ich bin aber davon ausgegangen, dass, wenn in XE3 die BDE noch unter stützt wird, das auch vollständing und korrekt der Fall ist. Die Methode wird auch in der Hilfe beschrieben, also sollte man doch davon ausgehen, dass das auch funktioniert...
Die Beschreibung der Methode ist vermutlich seit 10 Jahren nicht mehr angelangt worden. Das letzte mal als es ins neue Hilfesystem überführt wurde. Und ich glaube das mittlerweile bei Emba der Test gegen die BDE nur noch aus "It Compiles! Ship it" besteht.

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.

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.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Gollum
Gollum

Registriert seit: 14. Jan 2003
Ort: Boxberg
456 Beiträge
 
Delphi 10.1 Berlin Professional
 
#8

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

  Alt 21. Nov 2012, 12:10
Hallo,

was passiert, wenn Du TStream durch TBlobStream ersetzt?
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#9

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

  Alt 21. Nov 2012, 13:15
.... indem er statt BDE ADOExpress/dbGo verwendet hat.


Könnte es sein daß die BDE sich am Char-Format verschluckt?
Es hat da ja schon die seltsamsten Nebeneffekte gegeben.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.170 Beiträge
 
Delphi 10.4 Sydney
 
#10

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

  Alt 21. Nov 2012, 13:38
Könnte es sein daß die BDE sich am Char-Format verschluckt?
Müsste sich ja dann eigentlich schon bei D2009 verschluckt haben.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:16 Uhr.
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