net+oracle存贮图片

来源:互联网 发布:node inspector 编辑:程序博客网 时间:2024/05/23 15:34

  temp = xclsywcl.SavePhoto2(txtsfzhm.Text, Photosbinary())
                    If temp = "" Then
                        MsgBox("新增成功")
                        txtsfzhm.Focus()
                    Else
                        MsgBox("更新照片时发生错误,错误原因:" & temp)
                    End If

 

 

 

 '将图片转化为字节信息
    Private Function Photosbinary() As Byte()
       Try
            Dim image As New Bitmap(PictureBox1.Image)
            Dim stream As New MemoryStream
            image.Save(stream, System.Drawing.Imaging.ImageFormat.Bmp)
            Return stream.ToArray()

        Catch ex As Exception
            Return Nothing
        End Try

     End Function

 

 

        Public Function SavePhoto2(ByVal data_id As String, ByVal p_Blob As Byte()) As String
            Dim cn As OracleConnection = New OracleConnection(GetConn2)  'oracle数据库
            Try
                cn.Open()
                Dim photoadapter As OracleDataAdapter
                photoadapter = New OracleDataAdapter("SELECT *  FROM drv_photo WHERE  sfzmhm ='" + data_id + "'", cn)
                Dim photoDataSet As New DataSet("drv_photo")
                photoadapter.Fill(photoDataSet, "drv_photo")
                Dim updatesql As String = "UPDATE drv_photo SET zp=:vPHOTO  WHERE sfzmhm='" + data_id + "'"
                Dim updatecmd As New OracleCommand(updatesql, cn)
                photoadapter.UpdateCommand = updatecmd
                photoadapter.UpdateCommand.Parameters.Add(":vPHOTO", OracleType.Blob, p_Blob.Length, "ZP")
                photoadapter.MissingSchemaAction = MissingSchemaAction.AddWithKey
                photoadapter.FillSchema(photoDataSet, SchemaType.Source, "drv_photo")
                photoadapter.Fill(photoDataSet, "drv_photo")
                Dim phototable As DataTable                         'table
                Dim photoRow As DataRow                                'datarow
                phototable = photoDataSet.Tables("drv_photo")
                photoRow = phototable.Rows(0)
                photoRow.BeginEdit()
                photoRow("zp") = p_Blob
                photoRow.EndEdit()
                photoadapter.Update(photoDataSet, "drv_photo")
                Return ""
            Catch e As Exception
                Return e.ToString
            Finally
                cn.Close()
            End Try
        End Function

原创粉丝点击