我用ADOQuery就能实现把图片存储到数据库,而用BDE连接就不行
步骤如下:拉一个Query控件,在字段编辑器里面添加相应的字段。然后只要把active设置为真既打开数据集。就报错误,field 'ZP' is an unknown type。我的相片字段名是‘ZP’,类型是BLOB类型,实现代码如下:
with Query1 do
begin
Close;
SQL.Clear;
SQL.Add('begin');
SQL.Add('insert into xtwh.tmp_zjhm(SJHM,ZJHM,SFZDZ,ZP) values(:SJHM,:ZJHM,:SFZDZ,:ZP);');
SQL.Add('commit;end;');
ParamByName('SJHM').AsString:='3333';
ParamByName('ZJHM').AsString:='3333';
ParamByName('SFZDZ').AsString:='3333';
if (TBlobField(Query1.FieldByName('ZP')).IsBlob) then
showmessage('ok')
else
showmessage('error'); TBlobField(FieldByName('ZP')).LoadFromStream(stream1);
Query1.ExecSQL;
end;
步骤如下:拉一个Query控件,在字段编辑器里面添加相应的字段。然后只要把active设置为真既打开数据集。就报错误,field 'ZP' is an unknown type。我的相片字段名是‘ZP’,类型是BLOB类型,实现代码如下:
with Query1 do
begin
Close;
SQL.Clear;
SQL.Add('begin');
SQL.Add('insert into xtwh.tmp_zjhm(SJHM,ZJHM,SFZDZ,ZP) values(:SJHM,:ZJHM,:SFZDZ,:ZP);');
SQL.Add('commit;end;');
ParamByName('SJHM').AsString:='3333';
ParamByName('ZJHM').AsString:='3333';
ParamByName('SFZDZ').AsString:='3333';
if (TBlobField(Query1.FieldByName('ZP')).IsBlob) then
showmessage('ok')
else
showmessage('error'); TBlobField(FieldByName('ZP')).LoadFromStream(stream1);
Query1.ExecSQL;
end;
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货