vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

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

ADO.NET / Datenbanken
Re: Bild in Mysql DB Speichern 
Autor: Acki@warmup
Datum: 24.02.10 15:01

Servus Bigspliff,

ich habe es damals so gelöst.
Musst dir halt nur die Dateiendung merken und schon kannste alles in der DB abspeichern. Beim Auslesen der Daten hängst du an die Datei nur noch die ehemalige Endung an und schon haste das was damals in die DB gespeichert wurde.

In den Funktionen muss "strfile" immer den vollständigen Pfad + Dateinamen enthalten.
Das Feld in der Tabelle was die Daten empfängt ist vom Typ "OLEOBJECT".

Public Function UmwandelnDateiToBinär(ByVal strfile As String, & _
ByRef Daten() As Byte) As Boolean
        '       
        Dim fs As FileStream
        Try
            'Dateiiänge
            Dim myfilelength As Int64
            '
            'Filestream
            fs = New FileStream(strfile, FileMode.Open)
            '
            'Dateilänge bestimmen
            myfilelength = fs.Length
            '
            'Byte-Array redimensionieren
            ReDim Daten(myfilelength - 1)
            '
            'Datei lesen und in den Puffer schreiben
            fs.Read(Daten, 0, myfilelength)
 
            fs.Close()
            Return True
        Catch ex As Exception
            Return False
        End Try
 
    End Function
 
Public Function UmwandelnBinärToDatei(ByVal strfile As String, ByVal Daten As _
  Array) As Boolean
        '
        'Dateiiänge
        Dim myfilelength As Int64
        '
        'Filestream
        Dim fs As FileStream = New FileStream(strfile, FileMode.OpenOrCreate)
 
        Try
            '
            'Dateilänge bestimmen
            myfilelength = Daten.Length
            '
            'Datei  in Dateinamen speichern
            fs.Write(Daten, 0, myfilelength)
            Return True
        Catch ex As Exception
            fs.Close()
            Return False
        Finally
            fs.Close()
        End Try
 
End Function
 
Public Function Binär_Speichern(ByVal Daten() As Byte, ByVal Dateiname as _
  String, & _
ByVal Dateityp As String) as Boolean
 
Dim Verbindung As OleDbConnection
Verbindung = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data" & _
  "Source=" & Datenbankpfad & ";")
 
'So jetzt muss nur noch der SQL-Query generiert werden
Dim SqlBefehl As String
Dim Command As New OleDbCommand()
 
'OLDB Command
 SqlBefehl = "INSERT INTO TabelleDatei(Length,Dateiname,Dateityp)" & _
            " VALUES(Length,Dateiname,Dateityp)"
 
 
'Parameter zum Oldb Command hinzufügen und Wert zuweisen
Command.Parameters.Add("Length", OleDbType.Integer).Value = Daten.Length
Command.Parameters.Add("Dateiname", OleDbType.VarChar).Value = Dateiname
Command.Parameters.Add("Dateityp", OleDbType.VarChar).Value = Dateityp
 
Command.CommandText = SqlBefehl
Command.Connection = Verbindung
 
Try
' Datenbankverbindung öffnen
Verbindung.Open()
'Daten in die Datenbank schreiben
 
If Command.ExecuteNonQuery() = 1 Then
   MsgBox("Die Änderung wurde erfolgreich in die Datenbank geschrieben.", _
     MsgBoxStyle.Information)
   Return True
  Else
   MsgBox("Die Änderung konnte nicht in die Datenbank geschrieben werden.", _
     MsgBoxStyle.Exclamation)
    Return False
   End If
 Catch ex As Exception
  'Hier kommste hin, wenns nicht geklappt hat
   MessageBox.Show(ex.Message.ToString)
    Return False
 Finally
  'Datenbankverbindung schließen
     Verbindung.Close()
  End Try
 
End Function
 
End Class
Wenn du einen Eintrag mal wieder verändern willst, machste das dann so:

Command.Parameters.Clear()
SqlBefehl = "UPDATE TabelleDatei SET" & _
  "Length=@Length,Dateiname=@Dateiname,Dateityp=@Dateityp, Where ID=" + ID
 
Command.Parameters.AddWithValue("@Length", Daten.Length)
Command.Parameters.AddWithValue("@Dateiname", Dateiname)
Command.Parameters.AddWithValue("@Dateityp", Dateityp)
Hoffe dass ich dir helfen konnte.

Jedes Programm,
in das sich ein Fehler einschleichen kann,wird auch einen enthalten.

Beitrag wurde zuletzt am 24.02.10 um 15:14:18 editiert.

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Bild in Mysql DB Speichern4.524Bigspliff19.02.10 19:27
Re: Bild in Mysql DB Speichern1.610ModeratorFZelle20.02.10 17:10
Re: Bild in Mysql DB Speichern2.054Acki@warmup24.02.10 15:01
Re: Bild in Mysql DB Speichern1.433ModeratorFZelle24.02.10 19:30

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-2025 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