标题:请问各位高手vb.net如何把图片存入数据库中,然后又怎么读出呢?
只看楼主
zsdqxzxx
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2016-12-9
结帖率:33.33%
已结贴  问题点数:20 回复次数:5 
请问各位高手vb.net如何把图片存入数据库中,然后又怎么读出呢?
请问各位高手如何把图片存入数据库中,然后又怎么读出呢?

[此贴子已经被作者于2017-2-16 17:55编辑过]

搜索更多相关主题的帖子: 数据库 图片 如何 
2017-02-16 17:51
xzlxzlxzl
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖北
等 级:贵宾
威 望:125
帖 子:1091
专家分:5825
注 册:2014-5-3
得分:10 
如果是用普通的ado操作数据库,题主可百度下,有好多这类代码;如果是用.net的linq,我也不知道怎么弄。
2017-02-16 20:32
zbjzbj
Rank: 12Rank: 12Rank: 12
来 自:郑州
等 级:贵宾
威 望:52
帖 子:620
专家分:3020
注 册:2011-4-22
得分:10 
据我所知,sqlite 可以存储图片。存储格式为base64变换后的文本。vc资源也有采用这种方法存储图片。
2017-02-16 22:08
mybells
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2017-1-17
得分:0 


[此贴子已经被作者于2017-3-4 21:35编辑过]

2017-03-04 21:34
ztsjznc
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2017-12-19
得分:0 
存入数据库
  Select Case Me.Text
                Case "员工证件记录_新增"
                    If IsPicExist = True Then
                        Dim Data(fs.Length) As Byte
                        fs.Read(Data, 0, Int(fs.Length))
                        Dim Sql As String
                        Sql = "Select * from 证件记录"
                        Dim cmd As New SqlClient.SqlCommand(Sql, cn)
                         = "Insert Into 证件记录 (身份证号,姓名,证件名称,取证日期,证件照片) Values (@IDcard,@txtname,@PicName,@date,@photo)"
                        cmd.Connection = cn
                        Dim prm1 As New SqlParameter("@IDcard", str1)
                        Dim prm2 As New SqlParameter("@txtname", str2)
                        Dim prm3 As New SqlParameter("@PicName", str3)
                        Dim prm4 As New SqlParameter("@date", date1)
                        Dim prm5 As New SqlParameter("@photo", SqlDbType.VarBinary, Int(fs.Length), ParameterDirection.Input, False, 0, 0, "", DataRowVersion.Current, Data)
                        cmd.Parameters.Add(prm1)
                        cmd.Parameters.Add(prm2)
                        cmd.Parameters.Add(prm3)
                        cmd.Parameters.Add(prm4)
                        cmd.Parameters.Add(prm5)
                        cmd.ExecuteNonQuery()
                        MsgBox("添加证件记录成功!")
                        fs.Dispose()
读出数据
 Public Sub FillDialog()
        Try
            
             '打开连接
            Dim sql As String
            sql = "Select * From 证件记录 where ID =@ID"
            Dim cmd As New SqlClient.SqlCommand(sql, cn)
            Dim prm As New SqlParameter("@ID", DataGridViewId)
            cmd.Parameters.Add(prm)
            Dim da As New SqlClient.SqlDataAdapter(cmd) '定义sqldataadapter并于sqlcommand连接  
            Dim ds As New DataSet
            
            da.Fill(ds, "证件记录")
            If ds.Tables("证件记录").Rows.Count <> 0 Then
                If ds.Tables("证件记录").Rows(0)("证件照片") Is DBNull.Value Then
                    PictureBox1.Image = Nothing
                Else
                    Dim data() As Byte
                    data = ds.Tables("证件记录").Rows(0)("证件照片")
                    Dim stmphoto As New MemoryStream(data)
                    PictureBox1.Image = Image.FromStream(stmphoto)
                    TextBox1.Text = ds.Tables("证件记录").Rows(0)("身份证号").ToString
                    txtname.Text = ds.Tables("证件记录").Rows(0)("姓名").ToString
                    cmbPicName.Text = ds.Tables("证件记录").Rows(0)("证件名称").ToString
                    DateTimePicker1.Value = ds.Tables("证件记录").Rows(0)("取证日期").ToString
                End If
            End If
        Catch err As System.Exception
            MsgBox(err.Message, vbOKOnly + vbCritical, "出错信息提示")
        End Try
    End Sub
2017-12-19 15:02
jimei
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2020-9-28
得分:0 
回复 5楼 ztsjznc
想问一下    Dim Data(fs.Length) As Byte 中的  fs是怎么定义的  ,因为复制粘贴 发现未定义,另外 你的是 将图片是从文件路径中加载 上传到数据库 ,如果是 要将编辑过的图片存入数据库。也就是winform里 picturebox1控件里
显示的图片  如何上传到数据库中  。不知道如何操作
2020-09-28 15:53



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-474277-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.106948 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved