Insert into Sonderzeichen

02/09/2007 - 19:56 von sascha salentin | Report spam
Hi,
ich möchte aus vb.net einen Datensatz im SQL Server speichern:

insert into TABELLE (Felder) values ('Werte')

nun habe ich das Problem, dass der Anwender das Hochkomma einfügen möchte
und sogar die Kombination ',

Dabei bricht das vb.Net immer mit einem Fehler ab (Sinngemàß: Anzahl der
Spalten stimmt nicht)

Wie bekomme ich diese Zeichen trotzdem in die Datenbank?

Gruß sascha
 

Lesen sie die antworten

#1 Stefan Falz [MVP]
02/09/2007 - 20:15 | Warnen spam
Hallo sascha,

"sascha salentin" schrieb:

ich möchte aus vb.net einen Datensatz im SQL Server speichern:

insert into TABELLE (Felder) values ('Werte')



hier solltest Du nicht direkt die Werte in den SQL String einsetzen, sondern
mit Parametern arbeiten. Siehe hierzu bspw.:

http://msdn2.microsoft.com/de-de/li...lparameter(VS.80).aspx

Dabei bricht das vb.Net immer mit einem Fehler ab (Sinngemàß: Anzahl der
Spalten stimmt nicht)



Ein ' im Wert muss verdoppelt werden, in deinem Fall also:

SqlCommand = "insert into TABELLE (Felder) values ('abc''def')"

Dennoch ist es sinnvoller und weniger problematisch, mit Parametern zu arbeiten.
Spàt. bei SQL Injection solltest Du wach werden :)

Tschau, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

Ähnliche fragen