Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#2

Re: Binärwert in ByteField einfügen

  Alt 7. Feb 2005, 10:34
Zitat von TomDooley:
Ich habe in einem SQL-Server eine Tabelle zu befüllen, deren Felder vom Typ "binary" sind. In einem zugehörigen ADODataSet werden Binär-Felder als TBytesField dargestellt. Ich habe nun aus einer anderen Tabelle die "String-Form" dieses Binärfeldes (Wert wird so angezeigt, wenn Spalte osql ausgelesen wird). Meine Frage ist nun, wie ich meinen Wert in einen Binärwert bzw. TBytesField-Wert konvertieren kann....

Ich hätte eigentlich gedacht, dass ich wie folgt vorgehen kann:

Binär-Wert ausgelesen über osql: OxBE597560

Delphi-Quellcode:
bf : TBytesField;
bf.AsString := 'BE597560';
Leider bekomme ich dadurch aber einen anderen Wert. Was mache ich falsch? Kann mir jemand einen Tip geben?
Du musst die Daten schon binär im String reingeben:
Delphi-Quellcode:
bf : TBytesField;
bf.AsString := #$BE#$59#$75#$60; // als hartcodierte Konstanten
// oder auch
data := 'BE597560';
bf.AsString := HexStringToStr(data);
PS: in der Code-Library findet sich dazu eine komplette Lösung.
Andreas
  Mit Zitat antworten Zitat