vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB & Datenbanken
Re: Bild in Access Datenbank 
Autor: H?nk
Datum: 24.01.14 16:18

Servus

hier ein Beispiel in VB.NET


Imports System.Data.OleDb 
 
   Private Sub Datenbank_Bild_INSERT()
 
        Dim SqlString As String = "INSERT INTO Bild (Pic) VALUES (@1)"
 
        Using conn As New OleDbConnection(oConnection)
            Using cmd As New OleDbCommand(SqlString, conn)
                cmd.CommandType = CommandType.Text
 
                If Not Me.Pic_Hintergrundbild.Image Is Nothing Then
                    Dim nBytes() As Byte
                    With New ImageConverter
                        nBytes = CType(.ConvertTo(Pic_Hintergrundbild.Image, _
                          GetType(Byte())), Byte())
                    End With
                    cmd.Parameters.AddWithValue("@1", nBytes)
                Else
                    cmd.Parameters.AddWithValue("@1", DBNull.Value)
                End If
 
                Try
                    conn.Open()
                    cmd.ExecuteNonQuery()
                Catch ex As Exception
                    MsgBox("Fehler beim Einfügen des Bildes!" & vbCrLf & _
                      ex.Message, MsgBoxStyle.Information)
                End Try
            End Using
        End Using
 
    End Sub
    Private Sub Datenbank_Bild_laden()
 
        Using oCon As OleDbConnection = New OleDbConnection(oConnection)
            Using oAdapter As OleDbDataAdapter = New OleDbDataAdapter("SELECT" & _
              "Pic FROM Bild", oCon)
                Using oTable As DataTable = New DataTable
 
                    oAdapter.Fill(oTable)
 
                    If oTable.Rows.Count > 0 Then
                        Dim oRow As DataRow = oTable.Rows(0)
                        Dim nBytes() As Byte
                        nBytes = CType(oRow("Pic"), Byte())
                        If nBytes.Length > 0 Then
                            ' Unter Zuhilfenahme des ImageConverter-Objekts 
                            ' lässt sich ein Byte-Feld sehr einfach in ein 
                            ' Image-Objekt überführen
                            With New ImageConverter
                                Me.Pic_Hintergrundbild.Image = CType( _
                                  .ConvertFrom(nBytes), Image)
                            End With
                        End If
                    End If
 
                End Using
            End Using
        End Using
 
    End Sub
Jedoch belegt ein Bild in einer Datenbank z.T. sehr viel Speicher und das einladen der Datenbank - wenn gewünscht - dauert dadurch auch "sehr lange"

Hoffe dir damit geholfen zu haben.

Rainer

Hänk

(Wer früh aufsteht hat mehr vom Tag)

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Bild in Access Datenbank2.271mooserainer24.01.14 10:16
Re: Bild in Access Datenbank1.019H?nk24.01.14 16:18

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel