如何从Delphi 7(ADO组件)将Blob数据插入到Oracle XE中
最佳答案
使用TAdoQuery
组件检查这些样本。
直接从文件加载数据
ADOQuery1.Parameters.AddParameter.Name:='Param1';
ADOQuery1.Parameters.ParamByName('Param1').LoadFromFile('yourfilename',ftBlob);
ADOQuery1.SQL.Add('INSERT INTO TableName (FieldName) VALUES (:Param1)');
ADoQuery1.ExecSQL;
使用Stream加载数据
ADOQuery1.Parameters.AddParameter.Name:='Param1';
ADOQuery1.Parameters.ParamByName('Param1').LoadFromStream(AStream,ftBlob);
ADOQuery1.SQL.Add('INSERT INTO TableName (FieldName) VALUES (:Param1)');
ADoQuery1.ExecSQL;
您必须知道哪些
Microsoft Oracle oledb driver
与blob fields
不兼容,请尝试使用Oracle OLEDB provider
。作为最终建议,请尝试使用其他组件(例如dbexpress,
ANYDAC
或ODAC
组件)连接到ORACLE。