ora-22275指定lob定位器无效

liyaohuang 2003-10-09 12:11:28
把一个图存入一个Blob字段中.代码:
var picture :tpicture;
begin
if OpenPictureDialog1.Execute then
begin
Query1.Edit;
picture:=Tpicture.Create;
picture.LoadFromFile(OpenPictureDialog1.FileName);
DBImage1.Picture.Assign(picture);
end;
保存时出
ora-22275指定lob定位器无效.
help me
...全文
761 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
dickeybird888 2003-10-09
  • 打赏
  • 举报
回复
1.方法
你用一个TDatabase控件和一个TQuery控件,TDatabase中的BLOBSIZE值要大于你所写入的最大长度
Oracle中blob数据一定要先写空记录,然后修改,Oracle本身提供的例子中都是这么做的。
如果按你的要求,代码可以写为
Query.Close;
Query.SQL.Clear;
Query.SQL.Add('INSERT myimages VALUE(:filename,EMPTY_BLOB())');
Query.ParamByName('filename').AsString := DBEdit1.Text;
Query.ExecSQL;
Query.SQL->Clear;
Query.SQL->Add('UPDATE myimages SET images=:pic WHERE filename=:filename');
Query.ParamByName("filename").AsString := DBEdit1.Text;
Query.ParamByName('pic').LoadFromStream(MyStream,ftOraBlob);;
Query.ExecSQL;
2.方法
或者你干脆换成ADO就可以了,ADO就不会产生这个错误

2,495

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧