Sub retrievepic()

        Dim conn As New SqlConnection("data source=.\sqlexpress; integrated security=true; attachdbfilename=|datadirectory|\WAIS.mdf; user instance=true;")
        Dim cmd As New SqlCommand("select ImageData from ImagesStore where ImageId=@ImageId", conn)

        cmd.Parameters.AddWithValue("@ImageId", 3)

        Try
            conn.Open()
            PictureBox1.Image = Image.FromStream(New IO.MemoryStream(CType(cmd.ExecuteScalar, Byte())))
        Catch ex As Exception
            MsgBox(ex.Message)
        Finally
            conn.Close()
        End Try
    End Sub

This is my code for retrieving pictures, it was working before but then i accidentally deleted the table and i created it again with the same name and same fields. and now whenever i open the form with the picture, there was a message box error. it says

Buffer cannot be null. Parameter name: buffer

I don't know what i did wrong.

Are you still fighting this?

There are only two possible choices. You do not have an ImageId = 3 or the row with ImageId = 3 has a null value for column ImageData.

Fix it and move on with your life.

Yes I'm still 'fighting' it. because everytime i drop and recreate the table, i have to not call the retrievepic function first and then recall it for it to work.
i'm sure the pictures are storing, i check it everytime i insert a student.

i want to know why it's happening. when i'm pretty sure that the image is adding in the database

This article has been dead for over six months. Start a new discussion instead.