Skip to main content

Функция перевода Bitmap'а в Variant (ftVarBytes)

Аватар пользователя Shader
Не в сети
Студент
Зарегистрирован: 15.10.2005
Сообщения: 706
Баллы: 729
Функция перевода Bitmap'а в Variant (ftVarBytes)

Cоставляющие проблемы:
На сервере БД:

Есть база данных SQL MCDB, в ней есть таблица Fab, в которой имеется атрибут File типа Image:

Описание типа Image в  SQL Server 2000:<br />
Binary Strings Variable-length binary data with a maximum length of 2^31 - 1 (2,147,483,647) bytes.

Так же в этой базе создана хранимая процедура FabInsert:
Код процедуры:<br />
Create    PROC FabINSERT<br />
 @im       image<br />
  AS<br />
   INSERT INTO  Fab(File)<br />
   VALUES   (@im)

Программа, которая подключается к "MCDB":
Для подключения к БД существует ADOConnection, для исполнения функции внесения картинки в БД через хранимую процедуру имеется ADOStoredProc, со следующими параметрами:
[attachmentid=4675]
При исполнении кода ADOStoredProc неободимо в parametr[0] забить значение :
ADOStoredProc1.Parameters[0].Value:=*?????*

На hdd находиться картинка её можно загрузить во временную переменную TEMP типа TBitMap (например).

Подскажите что нужно сделать с TEMP, чтобы запихать её значение в parametr[1]?
Как я понимаю TEMP нужно перевести в массив byte (array of byte)? или нет ?
дай те инструкцию и желательно код Smile

Аватар пользователя badangel
Не в сети
Студент
Зарегистрирован: 12.09.2006
Сообщения: 677
Баллы: 761
Функция перевода Bitmap'а в Variant (ftVarBytes

Побитовое считывание в массив типа byte

ЦитатаADOStoredProc1.Parameters[0].Value:=*?????*
типо этого:
ADOStoredProc1.Parameters.Items[0].Value:=Edit1.Text;

Value имеет тип string

Аватар пользователя Shader
Не в сети
Студент
Зарегистрирован: 15.10.2005
Сообщения: 706
Баллы: 729
Функция перевода Bitmap'а в Variant (ftVarBytes

Мне нужно преобразовать данные, хранящиеся в TEMP таким образом чтобы их можно было записать в поле IMAGE в БД.

Типа этого:

Function MyConvert(T:TBitmap):Variant;
begin
----------код-----------------
end;

TEMP:= IMAGE1.picture.BITMAP;

ADOStoredProc1.Parameters.Items[0].Value:=MyConvert(TEMP);
ADOStoredProc1.ExecProc();

Ну желательно и обратную процедуру (т.е. извлечение из БД)

Аватар пользователя Shader
Не в сети
Студент
Зарегистрирован: 15.10.2005
Сообщения: 706
Баллы: 729
Функция перевода Bitmap'а в Variant (ftVarBytes

Тема закрыта!
Если кому интересно что необходимо делать читайте на SQL.ru

Аватар пользователя APOLLO
Не в сети
Гражданин
Зарегистрирован: 24.07.2006
Сообщения: 1180
Баллы: 1259
Функция перевода Bitmap'а в Variant (ftVarBytes

может выложиш исходники проги..мне интересно чё за прога то...

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".