是这段代码,刚才发的冲掉了
2. 将BMP图片存入数据库
integer bmpno,icount
//变量bmpno存放给定的图片编号
string filepath,filename
blob blb_tmp
//…此处对图片编号bmpno赋值,例如bmpno=101;可以通过程序实现为弹出对话框窗口提供一个图片编号
//查询指定的图片编号是否已经存在
icount=0
SELECT COUNT() INTO :icount
FROM bmptable
WHERE bmptable.bmpno=:bmpno
USING SQLCA; //:bmpno为给定的图片编号
if icount>0 then
MessageBox("查询结果",string(bmpno)+" 号图片已经存在,请输入一个新的图片编号")
return
end if
//在OLE控制对象ole_1中插入BMP图片文件
GetFileOpenName("请选择一个需要插入的BMP图片文件",filepath,filename,"BMP","BMP图片文件(.BMP),.BMP")
If Len(filepath)=0 Then
Return
End If
If ole_1.InsertFile(filepath)<>0 Then //OLE错误
Return
End If
//新图片入库
string sql
sql= "INSERT INTO bmptable (bmpno,bmpdata,bmpname) &&
VALUES ("&&
+string(bmpno)+",'','"&&
+filename+"')"
EXECUTE IMMEDIATE :sql;
If SQLCA.SQLDBCode=0 Then
COMMIT USING SQLCA;
//提交事务
Else
MessageBox("数据库错误","插入失败")
ROLLBACK USING SQLCA;
//事务回滚
Return
End If
Blb_tmp=ole_1.ObjectData
UPDATEBLOB bmptable SET bmpdata=:blb_tmp
WHERE bmptable.bmpno=:bmpno
USING SQLCA; //更新存放图片的字段
If SQLCA.SQLDBCode=0 Then
COMMIT USING SQLCA;
//提交事务
MessageBox("插入成功","图片入库成功")
Else
MessageBox("数据库错误","更新图片失败")
ROLLBACK USING SQLCA;
//事务回滚
Return
End If
我是技术新手,见笑了,谢谢