![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сохранение файлов в BLOB поле [D7, MSSQL]
DimonNew © (2005-01-24 17:42:00)Привет! Подскажите пожалуста! Сохраняю файл в BLOB-поле:
TBLOBField(dmMain.cldsBlock.FieldByName('DocBlock')).LoadFromFile(OpenDialog.FileName);
И через UpdateSQL пытаюсь вставить в БД:
insert into AutoTour(IDCountry,IDTour,IDTextBlock,
TypeTextBlock, NameTextBlock,PathUser,DocBlock)
values (:IDCountry,:IDTour,:IDTextBlock,
:TypeTextBlock, :NameTextBlock,:PathUser,:DocBlock)
DocBlock - BLOB-поле.
В результате выводится ошибка:
Operand type clash:text is incompatible with image
Может в MS SQL Server хранение файлов не в image? Или я не правильно обновляю поле BLOB?
DimonNew (2005-01-24 18:43:00) [1]Я сделал вот так
adocBlock.Parameters.ParamByName('DocBlock').LoadFromFile(adocBlock.Parameters.ParamByName('PathUser').Value,ftVar Bytes);
И все заработало, спасибо за помощь Соловьев ©!
DimonNew (2005-01-24 18:35:00) [2]
procedure TdmMain.dsprBlockBeforeUpdateRecord(Sender: TObject;
SourceDS: TDataSet; DeltaDS: TCustomClientDataSet;
UpdateKind: TUpdateKind; var Applied: Boolean);
begin
usqlBlock.DataSet:=DeltaDS;
usqlBlock.SetParams(UpdateKind);
adocBlock.CommandText:=usqlBlock.SQL[UpdateKind].Text;
adocBlock.Parameters.Assign(usqlBlock.Query[UpdateKind].Params);
adocBlock.Execute;
Applied := true;
end;
В этой процедуре возникает ошибка, в adocBlock.Execute
DimonNew (2005-01-24 18:28:00) [3]LoadFromFile - только один параметр имеет - иимя файла.
Соловьев (2005-01-24 18:03:00) [4]...
UpdateSQL.Parameters.ParamByName('DocBlock').LoadFromFile(OpenDialog.FileName, ftVarBytes);
...