VB.NET存取数据库图片相关方法介绍

VB.NET对于数据库的操作,大家应该都有所了解,这些相关操作对于程序开发都是 必不可少的。我们今天为大家介绍的是VB.NET存取数据库图片的相关方法,帮助大家提高程序开发效率,进一步掌握相关数据库处理方法。#t#

以MS自带的数据库Northwnd为例,其中有个表是Categories,有四个四段,其中有一个是Image类型的Picture字段.我们首先添加一张bmp图片到最后一行的Picture中,然后在读出来显示到Image控件中.

添加一个SqlDataAdapter1,用向导设置联接数据库为Northwnd,SQL语句为SELECT [Category ID], [Category Name], Description, Picture FROM Categories.生成一个数据集为dataset1. 然后添加两个按钮分别表示写图片到数据库和读数据库,还有一个Image控件用于显示图片.

添加以下VB.NET存取数据库图片代码

 
 
 
  1. Private Sub Form1_Load(ByVal 
    sender As System.Object,
     ByVal e As System.EventArgs) 
    Handles MyBase.Load  
  2. SqlDataAdapter1.Fill(DataSet11)  
  3. End Sub 

从数据库读取图片暂时存储为monkey.bmp,然后加载到image控件里面.

 
 
 
  1. Private Sub Button2_Click(ByVal 
    sender As System.Object, ByVal e 
    As System.EventArgs) Handles 
    LoadPicFromDb.Click  
  2. Try  
  3. Dim data As Byte() = DataSet11.
    Tables(0).Rows(7).Item(3)  
  4. Dim myfilestream As New System.IO.
    FileStream(Application.StartupPath
     & "\monkey.bmp", IO.FileMode.Create)  
  5. myfilestream.Write(data, 0, data.Length)  
  6. myfilestream.Close()  
  7. PictureBox1.Image = New Bitmap
    (Application.StartupPath & "\monkey.bmp")  
  8. Catch  
  9. End Try  
  10. End Sub 

把C:\6.bmp写入库中,你可以改为自己的图片.

 
 
 
  1. Private Sub Button3_Click(ByVal 
    sender As System.Object, ByVal 
    e As System.EventArgs) Handles 
    InsertPicToDb.Click  
  2. Dim myfilestream As New System.
    IO.FileStream("c:\6.bmp", 
    IO.FileMode.Open)  
  3. Dim data() As Byte  
  4. ReDim data(myfilestream.Length - 1)  
  5. myfilestream.Read(data, 0, 
    myfilestream.Length)  
  6. myfilestream.Close()  
  7. DataSet11.Tables(0).Rows(7).
    Item(3) = data  
  8. SqlDataAdapter1.Update
    (DataSet11.GetChanges())  
  9. End Sub 

VB.NET存取数据库图片的相关操作方法就为大家介绍到这里。

名称栏目:VB.NET存取数据库图片相关方法介绍
转载注明:http://www.shufengxianlan.com/qtweb/news15/456715.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联