Save Query "Image" problem

dicky18

Member
Joined
Sep 22, 2005
Messages
23
Location
bangkok
Programming Experience
Beginner
hi there i have an image i want to save it in access database i want to save the image not the path im using this
Dim tr As New ZieZoDB
Dim conn As OleDbConnection
conn = Me.OleDbConnection1
Dim fs As FileStream = New FileStream(OpenFileDialog1.FileName, FileMode.Open, FileAccess.Read)
Dim s As String = Me.txtimagepath.Text
'Read the output in binary reader
Dim r As BinaryReader = New BinaryReader(fs)
'Declare a byte array to save the content of the file to be saved
Dim FileByteArray(fs.Length - 1) As Byte
r.Read(FileByteArray, 0, CInt(fs.Length))


and here is the problem in this query


Try

Dim dbclass As New ZieZoDB

Dim query As String

query = "INSERT INTO [StudentInfo] ([StudentID], [StudentImage], [
StudentCardNumber] , [StudentName]) VALUES
('" & Me.txtstudentid.Text&"' ,,(???????????),'" & Me.txtcardnmber.Text & "', '" & Me.txtname.Text & "');"
dbclass.executeNonQuery(query)

what should i put for the image in the query to save thanks

 
VB.NET:
 [/color]
[color=black] [/color]
[color=black][size=2]Dim[/size][size=2] o [/size][size=2]As[/size][size=2]New[/size][/color][size=2][color=black] System.IO.FileStream(OpenFileDialog1.FileName, FileMode.Open, FileAccess.Read, FileShare.Read)[/color]
[color=black] [/color]
[/size][color=black][size=2]Dim[/size][size=2] r [/size][size=2]As[/size][size=2]New[/size][/color][size=2][color=black] StreamReader(o)[/color]
[color=black] [/color]
[/size][color=black][size=2]Dim[/size][size=2] FileByteArray(o.Length - 1) [/size][size=2]As[/size][/color][size=2][color=black]Byte[/color]
[color=black] [/color]
[/size][size=2][color=black]o.Read(FileByteArray, 0, o.Length) [/color]
[color=black] [/color]
[/size][color=black][size=2]Dim[/size][size=2] con [/size][size=2]As[/size][size=2]New[/size][/color][size=2][color=black] OleDb.OleDbConnection(ConnString)[/color]
[color=black] [/color]
[color=black]Dim sqlString as string = "INSERT INTO [StudentInfo] ([StudentID], [StudentImage], [StudentCardNumber[size=2][size=2]] , [StudentName]) VALUES [/size][/size][/color]
[size=2][color=black][size=2]('" & [/size][size=2]Me[/size][size=2].txtstudentid.Text&", [size=2]@Pic,[/size] " & [/size][size=2]Me[/size][size=2].txtcardnmber.Text & "', '" & [/size][size=2]Me[/size][size=2].txtname.Text &[/size][size=2] "');"[/size][/color][/size]
[color=black][/color][/size]
[color=black][size=2]Dim[/size][size=2] CmdObj [/size][size=2]As[/size][size=2]New[/size][/color][size=2][color=black] System.Data.OleDb.OleDbCommand(sqlstring, con)[/color]
[/size][size=2][color=black]CmdObj.Parameters.Add("@Pic", System.Data.OleDb.OleDbType.Binary, o.Length).Value = FileByteArray[/color]
[color=black] [/color]
[color=black]con.Open()[/color]
[color=black] [/color]
[color=black]CmdObj.ExecuteNonQuery()[/color]
[color=black] [/color]
[color=black]con.Close()[/color]
[color=black] [/color]
[/size][color=black]


That should give you the basic idea of what to do to replace the parameter value.

 
Back
Top