字段类型Image(不同数据库不同,如果没有再查找blob等类型),然后使用如下编程套路:
读取:
这样的字段不能放在数据窗口的Detail节中,通常用户点击某行数据,获取该行的主键信息,以该信息为条件检索图片信息。比如,主键为id,图片保存在zp字段中:
在dw_1的Clicked事件中编写如下程序:
String ls_id
blob lb_zp
if Row < 1 then return
ls_id = This.GetItemString(Row,'id')
selectblob zp into :lb_zp from employee where id = :ls_id;
if sqlca.SQLNRows > 0 then //判断是否读取成功
p_1.SetPicture(lb_zp) //显示在picture控件p_1中
end if
向数据库中保存图片的脚本如下:
首先需要明确:
1)事务对象需要设置AutoCommit属性为True
2)使用UpdateBlob语句修改,一次只能修改一条记录
3)在使用UpdateBlob之前数据应该已经存在。
基于上述原因,通常在卡片式的录入界面中(通常使用Freedom类型的数据窗口)让用户输入照片。数据保存后,马上调用以下脚本处理图片:
blob lb_zp
integer li_file
li_file = FileOpen(p_1.filename, StreamMode!)
IF li_file <> -1 THEN
FileRead(li_file,lb_zp)
FileClose(li_file)
UPDATEBLOB Employee SET zp = :lb_zp WHERE id = :ls_id;
END IF
IF sqlca.SQLNRows > 0 THEN
COMMIT;文章来源:https://www.toymoban.com/news/detail-494061.html
END IF
文章来源地址https://www.toymoban.com/news/detail-494061.html
到了这里,关于pb如何在数据库保存和读取图片的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!