CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  数据库(包含打印,安装,报表)

怎样通过vb编程实现向sql server2000的表中插入图片

楼主oceadneer()2004-05-01 00:33:31 在 VB / 数据库(包含打印,安装,报表) 提问

怎样通过vb编程实现向sql   server2000的表中插入图片 问题点数:50、回复次数:3Top

1 楼online(龙卷风V4.0--决战江湖(MS MVP-VB))回复于 2004-05-01 22:15:31 得分 50

可以用   ADODB.Stream来实现:  
   
  Dim   cn   As   New   ADODB.Connection  
  Dim   rs   As   New   ADODB.Recordset  
  Dim   stm   As   ADODB.Stream  
   
  Private   Sub   SavePictureToDB(cn   As   ADODB.Connection)  
  '将BMP图片存入数据库  
  On   Error   GoTo   EH  
          Set   stm   =   New   ADODB.Stream  
          rs.Open   "select   ImagePath,ImageValue   from   tbl_Image",   cn,   adOpenKeyset,   adLockOptimistic  
          CommonDialog1.ShowOpen  
          Text1.Text   =   CommonDialog1.FileName  
           
          With   stm  
                    .Type   =   adTypeBinary  
                    .Open  
                    .LoadFromFile   CommonDialog1.FileName  
          End   With  
          With   rs  
                    .AddNew  
                    .Fields("ImagePath")   =   Text1.Text  
                    .Fields("ImageValue")   =   stm.Read  
                    .Update  
          End   With  
          rs.Close  
          Set   rs   =   Nothing  
  Exit   Sub  
  EH:   MsgBox   Err.Description,   vbInformation,   "Error"  
  End   Sub  
   
   
  Private   Sub   LoadPictureFromDB(cn   As   ADODB.Connection)  
  '载数据库中读出BMP图片  
  On   Error   GoTo   EH  
          Dim   strTemp   As   String  
          Set   stm   =   New   ADODB.Stream  
          strTemp   =   "c:\temp.tmp"   '临时文件,用来保存读出的图片  
          rs.Open   "select   ImagePath,ImageValue     from   tbl_image",   cn,   ,   ,   adCmdText  
          With   stm  
                  .Type   =   adTypeBinary  
                  .Open  
                  .Write   rs("ImageValue")  
                  .SaveToFile   strTemp,   adSaveCreateOverWrite  
                  .Close  
          End   With  
          Image1.Picture   =   LoadPicture(strTemp)  
          Set   stm   =   Nothing  
          rs.Close  
          Set   rs   =   Nothing  
  Exit   Sub  
  EH:   MsgBox   Err.Description,   vbInformation,   "Error"  
  End   Sub  
   
  Top

2 楼online(龙卷风V4.0--决战江湖(MS MVP-VB))回复于 2004-05-01 22:15:50 得分 0

*************************************************************************  
  '**  
  '**   使用   ADODB.Stream   保存/读取文件到数据库  
  '**   引用   Microsoft   ActiveX   Data   Objects   2.5   Library   及以上版本  
  '**  
  '**   -----   数据库连接字符串模板   ---------------------------------------  
  '**   ACCESS数据库  
  '**   iConcStr   =   "Provider=Microsoft.Jet.OLEDB.4.0;Persist   Security   Info=False"   &   _  
  '**           ";Data   Source=数据库名"  
  '**  
  '**   SQL数据库  
  '**   iConcStr   =   "Provider=SQLOLEDB.1;Persist   Security   Info=True;"   &   _  
  '**           "User   ID=用户名;Password=密码;Initial   Catalog=数据库名;Data   Source=SQL服务器名"  
  '**  
  '*************************************************************************  
  '  
  '保存文件到数据库中  
  Sub   s_SaveFile()  
          Dim   iStm   As   ADODB.Stream  
          Dim   iRe   As   ADODB.Recordset  
          Dim   iConcStr   As   String  
           
          '数据库连接字符串  
          iConcStr   =   "Provider=Microsoft.Jet.OLEDB.4.0;Persist   Security   Info=False"   &   _  
                  ";Data   Source=F:\My   Documents\客户资料1.mdb"  
           
          '读取文件到内容  
          Set   iStm   =   New   ADODB.Stream  
          With   iStm  
                  .Type   =   adTypeBinary         '二进制模式  
                  .Open  
                  .LoadFromFile   "c:\test.doc"  
          End   With  
           
          '打开保存文件的表  
          Set   iRe   =   New   ADODB.Recordset  
          With   iRe  
                  .Open   "表",   iConc,   adOpenKeyset,   adLockOptimistic  
                  .AddNew                   '新增一条记录  
                  .Fields("保存文件内容的字段")   =   iStm.Read  
                  .Update  
          End   With  
           
          '完成后关闭对象  
          iRe.Close  
          iStm.Close  
  End   Sub  
   
  '从数据库中读取数据,保存成文件  
  Sub   s_ReadFile()  
          Dim   iStm   As   ADODB.Stream  
          Dim   iRe   As   ADODB.Recordset  
          Dim   iConc   As   String  
           
          '数据库连接字符串  
          iConc   =   "Provider=Microsoft.Jet.OLEDB.4.0;Persist   Security   Info=False"   &   _  
                  ";Data   Source=\\xz\c$\Inetpub\zj\zj\zj.mdb"  
           
          '打开表  
          Set   iRe   =   New   ADODB.Recordset  
          iRe.Open   "tb_img",   iConc,   adOpenKeyset,   adLockReadOnly  
          iRe.Filter   =   "id=64"  
           
          '保存到文件  
          Set   iStm   =   New   ADODB.Stream  
          With   iStm  
                  .Mode   =   adModeReadWrite  
                  .Type   =   adTypeBinary  
                  .Open  
                  .Write   iRe("img")  
                  .SaveToFile   "c:\test.doc"  
          End   With  
           
          '关闭对象  
          iRe.Close  
          iStm.Close  
  End   Sub  
   
  Top

3 楼hewei2003(为为)回复于 2004-05-02 12:55:27 得分 0

我有另一种方法的源码  
  Email:cqhw2003@126.comTop

相关问题

  • SQL Server编程求解!!!!!
  • excel,sql server,asp编程!(急!!!!!!!!!)
  • SQL SERVER/vb数据库编程时,数据库中Null值的处理?
  • 怎样用vb编程实现sql server 的自动安装数据库??
  • 怎样进行vb的SQL编程?
  • 各位大哥,大姐:如何用VB编程执行一个sql server 的".sql"脚本文件?
  • vb和用ado编程实现与sql server 2000数据库的连接的疑难问题(救急)
  • vb and sql_server
  • vb+sql server(急)
  • 用 VB编程

关键词

  • sql server2000
  • adodb
  • stm
  • 图片
  • commondialog
  • 实现
  • rs
  • stream
  • cn
  • open

得分解答快速导航

  • 帖主:oceadneer
  • online

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo