Работаю на VB6 через ADO c IB6
задача - хранить в базе картинки из Picture и соответственно их показывать.
проблема - Не удается сохранить ни одну картинку . Текст привожу
CREATE TABLE "IMG1"
(
"IMAGE1" BLOB SUB_TYPE 0 SEGMENT SIZE 80
);
далее код VB:
В Picture1 загружена картинка из файла.
cnn1 - поднятое соединение с базой
Dim cmd1 As ADODB.Command
Set cmd1 = New ADODB.Command
With cmd1
.ActiveConnection = cnn1
.CommandText = "insert into img1(image1) values(?)"
End With
' автоматически генерируем список параметров
cmd1.Parameters.Refresh
' для единственного параметра задаем значения соотв. свойств
cmd1(0).Size = 10000000
cmd1(0).Attributes = adParamLong
cmd1(0).Type = adLongVarBinary
cmd1(0).Direction = adParamInput
' на этой строке выходит ошибка
' Application uses a value of the wrong typefor the current operation
cmd1(0).Value = Picture1.Picture
cmd1.Execute
пробовал в качестве TYPE параметра указывать adVariant, в этом случае присвоение проходит , но в момент выполнения Excecute вылазит ошибка конвертирования данных
Подскажите что делать . На VBAшных форумах на этот вопрос никто не знает ответа. Только предложения хранить файл на диске , а в базе только путь на него . Но в системе клиент- сервер это , конечно же неприемлемо.
VB pictures в BLOB ?
Модератор: kdv