yogesh vaidya Ответов: 2

Как я получаю изображение из базы данных acces в windows form picturbox1


я пытаюсь получить изображение на листе отчета или экране отчета из базы данных acces 2013, но я не могу добиться успеха в этом, пожалуйста, исцелите меня, чтобы решить мою проблему .

Что я уже пробовал:

доступ как строка dbcontrol и класс поставщика param


Label100.Text = access.dbdt.Rows.Count

       If Val(Label1.Text) = 1 Then
           Dim i As Integer
           i = DataGridView1.CurrentRow.Index
           'Image
           Dim bytes As [Byte]() = (DataGridView1.Item(29, i).Value)
           Dim ms As New MemoryStream(bytes)
           PBox1.Image = Image.FromStream(ms)

       End If

2 Ответов

Рейтинг:
2

RickZeeland

Вот еще один способ сделать это:

Dim command As New OleDbCommand("SELECT Image FROM Table WHERE Rollno ='" & textbox1.Text & "'", myconnection)

            command.Parameters.AddWithValue("@Rollno", Textbox1.Text)
            Dim pictureData As Byte() = DirectCast(command.ExecuteScalar(), Byte())

            myconnection.Close()
            command.Dispose()
            Dim stream As New IO.MemoryStream(pictureData)
            Me.PictureBox1.Image = Image.FromStream(stream)'See in this picturebox1 you're showing the Image.
            '' NOTE: don't dispose stream!!
        Catch ex As Exception
            Label3.ForeColor = Color.Red
            Label3.Text = "The Given Rollno has not found in the database"
            Return
        End Try
Видеть: vb.net -извлечение изображения из базы данных access - переполнение стека[^]

Приведенный выше пример из Stackoverflow будет работать, но неверно, Параметр команды @Rollno не будет использоваться, смотрите здесь для получения дополнительной информации:
Коллекции sqlparametercollection.Метод AddWithValue (String, Object) (System. Data.SqlClient)[^]


Рейтинг:
0

RickZeeland

Вот еще один способ, на случай, если это Оле картина:
Сохранение OLE-объекта в качестве типа данных изображения в SQL[^]