Показать полную графическую версию : [решено] Oracle + RAW + Delphi
Здравствуйте многоуважаемые гуру!
Пишу одну программулинку по выковыриванию данных из оракла и как назло мне на встречу попалось поле с типом данных RAW, которое как раз мне и надо прочитать.
Внимание, вопрос.
Как прочитать данный тип?
Либо как конвертировать RAW в ASCII?
Спасибо
BlackEric
30-06-2012, 18:25
Тип RAW используется для хранения двоичных данных фиксированной длины. В отличие от символьных дан*ных, данные типа RAW не преобразуются из одного набора символов в другой при их передаче из одной базы данных в другую. Максимальная длина переменной RAW равна 32 767 байт. Максимальная же длина поля RAW базы данных составляет 2000 байт (255 в Огас1е7), поэтому, если размер данных превышает 2000 байт, они не могут быть введены в стол*бец RAW базы данных. Однако они могут быть введены в столбец базы данных, имеющий тип LONG RAW, максимальная длина которого состав*ляет 2 Гбайт.
Т.е. читаете как обычные бинарные данные.
Я правильно понял, что вы читаете данные из файла Oracle напрямую?
Подключаюсь как обычный клиент и читаю.
В string оно конечно же запихивается, но не читаемо.
Всем спасибо, все свободны
var
sbin:string;
shex:string
......
sbin:=UNIQuery1.FieldList.Fields[2].AsString;
SetLength(sHex, Length(sBin) * 2);
BinToHex(PChar(sBin), PChar(sHex), Length(sBin));
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.