delphi oracle blob

use*_*332 4 delphi ado delphi-7

如何从delphi 7(ado组件)将blob数据插入oracle xe

RRU*_*RUZ 6

使用TAdoQuery组件检查这些样品.

直接从文件加载数据

 ADOQuery1.Parameters.AddParameter.Name:='Param1';
 ADOQuery1.Parameters.ParamByName('Param1').LoadFromFile('yourfilename',ftBlob);
 ADOQuery1.SQL.Add('INSERT INTO TableName (FieldName) VALUES (:Param1)');
 ADoQuery1.ExecSQL;
Run Code Online (Sandbox Code Playgroud)

使用Stream加载数据

 ADOQuery1.Parameters.AddParameter.Name:='Param1';
 ADOQuery1.Parameters.ParamByName('Param1').LoadFromStream(AStream,ftBlob);
 ADOQuery1.SQL.Add('INSERT INTO TableName (FieldName) VALUES (:Param1)');
 ADoQuery1.ExecSQL;
Run Code Online (Sandbox Code Playgroud)

你必须知道哪些Microsoft Oracle oledb driver不兼容blob fields尝试而不是使用Oracle OLEDB provider.

如果可以的话,作为最终建议,尝试使用其他组件连接到ORACLE,如dbexpress ANYDACODAC组件