OLE-Objekt updaten

24/02/2010 - 19:34 von Werner Leupold | Report spam
Hi NG,
ich habe in einer Access-Tabelle Bilder gespeichert, die ich folgendermaßen
an die Tabelle übergebe:
Try
Dim oleDBAdapter As Data.OleDb.OleDbDataAdapter = New
Data.OleDb.OleDbDataAdapter("Select * From tblPics", conn)
Dim oleDBcb As Data.OleDb.OleDbCommandBuilder = New
Data.OleDb.OleDbCommandBuilder(oleDBAdapter)
Dim ds As Data.DataSet = New Data.DataSet
oleDBAdapter.MissingSchemaAction =
Data.MissingSchemaAction.AddWithKey
oleDBAdapter.Fill(ds, "Pictures")
Dim dsRow As Data.DataRow = ds.Tables(0).NewRow
dsRow.BeginEdit()
dsRow("KlassenID") = KID
dsRow("SchuelerID") = SchID
dsRow("Pic") = picImg
dsRow("PicSize") = picSize
dsRow.EndEdit()
ds.Tables(0).Rows.Add(dsRow)
oleDBAdapter.Update(ds.Tables(0))
ds.AcceptChanges()
oleDBcb.Dispose()
oleDBAdapter.Dispose()
Return True
Catch ex As Exception
Return False
End Try

Nun suche ich eine Möglichkeit die Bilder bei Bedarf mit einem Update-Befehl
zu überschreiben. Leider habe ich dazu bisher keine andere Möglichkeit
gefunden als den jeweiligen Datensatz zu löschen und einen neuen Datensatz zu
erstellen. Das ist recht unpraktisch, wenn im Datensatz noch viele andere
Datenfelder enthalten sind.
Ich wàre also sehr dankbar, wenn mir einer der Datenbankprofis den oben
angegebenen Code anpassen oder mir zumindest einen Hinweis dafür geben könnte.

Danke Werner
 

Lesen sie die antworten

#1 Peter Götz
25/02/2010 - 08:20 | Warnen spam
Hallo Werner,

ich verstehe (noch) nicht so ganz, was Dein eigentliches
Problem ist. Ich vermute mal es ist der Umgang mit
CommandObjekten und/oder deren Erstellung im Code.

Schau Dir dazu vielleicht mal

www.gssg.de -> Visual Basic -> VB.net
-> Datenbank "DB CommandObjekte / DataReader"

an. Dieses Beispiel zeigt u.a. das Erstellen von Insert-,
Update- und DeleteCommands.

Gruß aus St.Georgen
Peter Götz
www.gssg.de (mit VB-Tipps u. Beispielprogrammen)

Ähnliche fragen