Einzelnen Beitrag anzeigen

Morphie

Registriert seit: 27. Apr 2008
Ort: Rahden
630 Beiträge
 
#1

DEFAULT_VALUE auslesen

  Alt 3. Okt 2010, 13:41
Datenbank: Firebird • Version: 2.1 • Zugriff über: IBDAC
Hi, ich steh im Moment irgendwie auf'm Schlauch!

Ich versuche in Firebird die Spaltendefinitionen auszulesen und brauche daher den Wert für DEFAULT_VALUE.
Nur das Problem ist, dass ich den Wert nicht einfach so auslesen kann... Er ist wohl irgendwie als "Blob" gespeichert.

Wenn ich jetzt z.B. für eine Spalte den Defaultwert 0 eintrage...

Code:
CREATE TABLE TEST (
  TEST CHAR DEFAULT 0
);
...und rufe dann folgende Abfrage ab...

Code:
SELECT RDB$FIELD_NAME AS field_name,
RDB$RELATION_NAME AS tablename,
RDB$DEFAULT_VALUE AS field_default_value
FROM RDB$RELATION_FIELDS
WHERE RDB$SYSTEM_FLAG=0
ORDER BY RDB$FIELD_POSITION;
...dann bekomme ich in meinem DBMS (Firebird Maestro) für "field_default_value" ein Blobergebnis.

Und genau da taucht mein Problem auf. Wie konvertiere ich jetzt aus diesem Blobergebnis den ursprünglichen Wert (0)?
Ich habe schon versucht bei meinen Zugriffskomponenten .asString aufzurufen, da bekomme ich allerdings nur merkwürdige Symbole (Unicode / Ansi Probleme?)

Der Wert in dem Blob Feld lautet: 05 15 08 00 00 00 00 00 4C

Es ist bestimmt total simpel, aber ich komme im Moment nicht drauf...
Aus welchem Datentyp muss ich das Feld auslesen, damit ich es später in einen String konvertieren kann? Defaultwert 0 soll also später in einem String "Defaultwert: 0" geschrieben werden.

Ich hoffe mir kann jemand helfen
  Mit Zitat antworten Zitat