如何将PDF文件存入sql server

hovy_yang 2011-12-21 12:15:30
虚心求教,如何用PB将PDF存入sql server,多种方式更好!谢谢!
...全文
905 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
cgp1979 2011-12-23
  • 打赏
  • 举报
回复
我有做好的上传和下载文件的函数,如果需要的话,加我qq241916400
PB菜鸟 2011-12-22
  • 打赏
  • 举报
回复
yyoinge 2011-12-21
  • 打赏
  • 举报
回复
直接updateblob即可
xuam 2011-12-21
  • 打赏
  • 举报
回复
一种是存路径。
一种是转换成BLOB,存进数据库.
fm20027 2011-12-21
  • 打赏
  • 举报
回复
文件存入数据库不用再说了,取出后如何在PB下显示,应该可以,我曾看到过一个东西,但没有找到,好像是个pdfview的控件,用它即可将读出的PDF文件显示出来。
路人甲cw 2011-12-21
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 qq5596629007 的回复:]

引用 7 楼 hovy_yang 的回复:
引用 5 楼 qq5596629007 的回复:

那个,我觉得就算你用updateblob存进去了,在怎么读出来啊
读出来就是一串数字了啊

读出来的时候不能按原文件那样显示出来吗?

应该能恢复原样的吧!我原来的意思是不能再pb里显示出来
[/Quote]
存二进制,取进制为什么不可以?取出二进制数据之后再写到一个临时的pdf文件里就行了
qq5596629007 2011-12-21
  • 打赏
  • 举报
回复
int fnum, i, loops, ctr, ret,xh
long flen, sum_read, p_new

p_new = 0
blob b, tot_b
xh = integer(sle_1.text)
flen = filelength(sle_2.text)
fnum = fileopen(trim(sle_2.text),streammode!)

//一次最多只能读取32k,计算一共要读取几次
if flen > 32765 then
if mod (flen,32765) = 0 then
loops = flen/32765
else
loops = flen/32765 + 1
end if
else
loops = 1
end if

//循环读取文件
for i = 1 to loops
sum_read = fileread(fnum, b)
tot_b = tot_b + b
p_new = p_new + sum_read
fileseek(fnum, p_new, frombeginning!) //其实fileread可以自动定位,这句话可以去掉
next

fileclose(fnum)
connect;
insert into pic values (:xh, :tot_b);
disconnect;
connect;
updateblob pic set p_image = :tot_b where p_index = :xh;
disconnect;

//在updateblob和selectblob之前要把autocommit设置成true,要不可能出问题
这是我笔记里一段把图片写进数据库的代码,希望对你有用
qq5596629007 2011-12-21
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 hovy_yang 的回复:]
引用 5 楼 qq5596629007 的回复:

那个,我觉得就算你用updateblob存进去了,在怎么读出来啊
读出来就是一串数字了啊

读出来的时候不能按原文件那样显示出来吗?
[/Quote]
应该能恢复原样的吧!我原来的意思是不能再pb里显示出来
hovy_yang 2011-12-21
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 dawugui 的回复:]

引用楼主 hovy_yang 的回复:
虚心求教,如何用PB将PDF存入sql server,多种方式更好!谢谢!
我建议把路径名存入数据库即可,没有必要把文件存进数据库.
[/Quote]
但是存路径,如果路径下的文件没有了怎么办,我们公司是打算把一些单据永远的保存下来
hovy_yang 2011-12-21
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 qq5596629007 的回复:]

那个,我觉得就算你用updateblob存进去了,在怎么读出来啊
读出来就是一串数字了啊
[/Quote]
读出来的时候不能按原文件那样显示出来吗?
wang_zhm 2011-12-21
  • 打赏
  • 举报
回复
我觉得最简单的方法就是存放路径~读取,写入都方便~
qq5596629007 2011-12-21
  • 打赏
  • 举报
回复
那个,我觉得就算你用updateblob存进去了,在怎么读出来啊
读出来就是一串数字了啊
dawugui 2011-12-21
  • 打赏
  • 举报
回复
[Quote=引用楼主 hovy_yang 的回复:]
虚心求教,如何用PB将PDF存入sql server,多种方式更好!谢谢!
[/Quote]我建议把路径名存入数据库即可,没有必要把文件存进数据库.
PB菜鸟 2011-12-21
  • 打赏
  • 举报
回复

这种数据也存到数据库,不怕增加数据库负担?

752

社区成员

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

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