07-06-14, 11:17 PM
كيف يمكن ان اعمل select او استرجع صورة محفوظة فى قاعدة بيانات sql server
حيث فى البداية حولت الصورة الى binary
وهذا كود الحفظ
اما كود الاسترجاع
حيث فى البداية حولت الصورة الى binary
وهذا كود الحفظ
كود :
Dim cmd As New SqlCommand("SELECT ID, " & _
"im FROM Table1 ORDER BY ID", sqlcon1)
Dim da As New SqlDataAdapter(cmd)
Dim ds As New DataSet()
da.Fill(ds, "Table1")
Dim c As Integer = ds.Tables("Table1").Rows.Count
If c > 0 Then
Dim bytim() As Byte = _
ds.Tables("Table1").Rows(c - 1)("im")
Dim stmim As New MemoryStream(bytim)
picBLOB.Image = Image.FromStream(stmim)
End If
كود :
Dim cmd As New SqlCommand("INSERT INTO Table1 (im) " & _
"VALUES (@im)", sqlcon1)
Dim ms As MemoryStream = New MemoryStream()
picBLOB.Image.Save(ms, ImageFormat.Png)
Dim bytim(ms.Length - 1) As Byte
ms.Position = 0
ms.Read(bytim, 0, ms.Length)
Dim prm As New SqlParameter("@im", SqlDbType.VarBinary, _
bytim.Length, ParameterDirection.Input, False, _
0, 0, Nothing, DataRowVersion.Current, bytim)
cmd.Parameters.Add(prm)
sqlcon1.Open()
cmd.ExecuteNonQuery()
sqlcon1.Close()
كود :
Dim ssqlstatment As String
Dim sql11 As String
ssqlstatment = " "
sql11 = " "
Dim firstcont As Boolean = True
If txtquery1.Text <> " " Then
If firstcont = False Then
ssqlstatment = ssqlstatment & " table1.id like '%" & txtquery1.Text.Trim & "%'"
Else
firstcont = False
ssqlstatment = ssqlstatment & " table1.id like '%" & txtquery1.Text.Trim & "%'"
End If
End If
sqlcon1.Open()
sql11 = " Select * from table1 where " & ssqlstatment
Dim cmd As New SqlCommand(sql11)
cmd.Connection = sqlcon1
'-------------------------------
'---------------------------------
Dim dr As SqlDataReader = cmd.ExecuteReader
If dr.HasRows Then
dr.Read()
txtrec1.Text = dr.Item("id")
txtid.Text = dr.Item("id")
txtim1.Text = dr.Item("im")
txtdate.MyText = dr.Item("date")
sqlcon1.Close()
Else
MsgBox("السجل غير موجود ", MsgBoxStyle.Exclamation, "خطأ")
End If
End Sub