收录日期:2019/01/21 20:16:02 时间:2016/05/13 10:44:37 标签:非技术版
请问如何把图像存进数据库,并用picture控件显示出来.
如果窗口中有一个pictue控件 p_1;从数据库中检索出图像存放在一个Blob变量bb
p_1=bb就行了。
你可以打开图片的文件,然后将该文件存放一个变量中
再用
insertblob into 表
values(:变量);
在数据库中存放图片的字段必须是blob型。

例如:在数据库中有一个叫BLOB_TABLE的表,其中有两个字段分别为:
BLOB_ID INT NOT NULL PRIMARY KEY
BLOB_COL BLOB NULL
在将BLOB写入数据库之前,必须将主键值写入数据库,因此先在表中加入一个新记录,BLOB_ID的值为737,而BLOB_COL设置为NULL,然后执行如下代码:

int filenum,loops,counter
long filelen,bytes_read,new_pos
blob temp_blob,total_blob

setpointer(hourglass!)

//获取文件的长度
filelen = filelength(sle_filename.text)                                 

//指定文件为只读,filenum为该文件的句柄
filenum = fileopen(sle_filename.text,streammode!,read!,lockread!)

if filelen>32765 then 
loops = ((filelen - 1)/32765) + 1 
else
loops = 1
end if

//读文件...
for counter = 1 to loops
bytes_read = fileread(filenum,temp_blob)
total_blob = total_blob + temp_blob
next
fileclose(filenum)

updateblob blob_table set blob_col = :total_blob where blob_id = 737 using sqlca;
if sqlca.sqlcode<>0 then
messageobx('updateblob失败!',sqlca.sqlerrtext)
return
end if

当你想从数据库中取BOLB型数据时,可执行如下代码:
blob lb_blob
selectblob blob_col into :lb_blob from blob_table where blob_id = 737 using sqlca;

setpicture(p_1,lb_blob) //p_1为一PICTURE控件。
32765在这里是什么意思?
是因为fileread 和 filewrite一次只能读/写32765字节的数据,所以要采用分段读写。
fileread()函数不支持读取大于32K的文本
可以将题片的路径和文件名存入数据库, 需要时调用

ScheduledThreadPoolExecutor如何重置计时.标题要长.......................................... 2003的boot.ini /3GB 参数问题 匿名管道ReadFile sobel算子求方向场偏转135°说法是错误的 类调用一次构造函数却二次析构函数?为什么 PID算法 单片机 智能车 新手求救啊~~ TdxSkinController使用 问大家一些问题 js操作文件:怎么用FileSystemObject得到文件夹中文件的个数啊~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 字符串截取操作 陷入trap的通俗解释 谁有powerbuilder数据库开发经典案例解析这本书的cd光盘? 怎样和从服务器端发送一个命令给客户端 MFC? 新手求助,关于postmessage问题。 自用 C++ 书籍低价转让!!!!! 求助:itemchanged事件里面(dwo.Name)为什么报错? 一网络程序VS2008能编译通过VS2005就出错?? 求教,linux重启只能到grub 求解ASP用customvalidator定义密码没反应 如何利用timing实现同时使用多个定时器? 新手 汇编求教 关于Debug Assertion Failed!的问题 求vb6.0 MSCHART控件达人讲解 lomboz eclipse3.3运行一个jsp页面 web browser怎么不自动弹出来了??? 关于Floyd算法路径的存储问题 我怎么看出A的前驱就是B呢? 请教一个有关多声道录音的问题。 VBScript 发送邮件 邮件Html格式没有显示出来 求救 GetPenColor() 函数为什么显示未定义 谁有 标准C程序设计 第四版 E Balagurusamy 课后答案吗? 为什么我的网站在GOOGLE更新很慢呢injection mould