byte-Array in eine varbinary(max)-Spalte schreiben?

07/05/2009 - 12:42 von Maik T. | Report spam
Hallo,

ich habe gerade ein Problem mit einem SQL-Statement und hoffe, dass ihr mir
da weiterhelfen könnt.

Ich habe eine Methode, die ein "INSERT INTO"-Befehl ausführen soll und als
Übergabeparameter bekomme ich eine DataTable mit einer Zeile.

Mein INSERT Befehl sieht folgendermaßen aus:

"INSERT INTO tblDokumente (DokGuid, DokBezeichnung, DokDokument) VALUES ('"
+ Guid.NewGuid() + "', '" + dtDok["DokBezeichnung"] + "', '" +
dtDok["DokDokument"] + "')";

In meiner SQL-Tabelle befinden sich, wie ihr sehen könnt drei Spalten
(Uniqueidentifier, nvarchar(50), varbinary(MAX))


Führe ich nun dieses Statement aus und versuche halt mein byte-Array in die
varbinary-Spalte zu schreiben, so bekomme ich immer folgende Fehlermeldung:

"System.Data.SqlClient.SqlException: Die implizite Konvertierung vom
varchar-Datentyp in varbinary(max) ist nicht zulàssig. Verwenden Sie die
CONVERT-Funktion, um diese Abfrage auszuführen."


Wie kann ich denn mein Statement mit der Convert-Funktion realisieren?


MfG
Maik T.

P.S. Ich benutze das VS 2008 und den SQL-Server 2005.
 

Lesen sie die antworten

#1 Peter Fleischer
07/05/2009 - 14:45 | Warnen spam
"Maik T." schrieb im Newsbeitrag
news:gtudu5$54p$

Wie kann ich denn mein Statement mit der Convert-Funktion realisieren?



Arbeite typgerecht mit Parameter-Objekten und das Problem entsteht nicht.

Viele Grüsse
Peter

Ähnliche fragen