2016-07-14 14 views
-1

Wo ist das Problem in dieser Aussage?Was ist falsch mit diesem Befehl einfügen?

SqlCommand cmd = new SqlCommand("INSERT INTO User_images (Pictures,UserName) VALUES (@pic1,'" + username.Text + "')(@pic2,'" + username.Text + "')(@pic3,'" + username.Text + "')(@pic4,'" + username.Text + "')(@pic5,'" + username.Text + "')(@pic6,'" + username.Text + "')", con1); 

Der Fehler ist:

falsche Syntax in der Nähe von "

+0

Es sieht so aus, als würden Sie die Kommata zwischen den einzelnen Sets vermissen, zB "values ​​(1, 2), (3, 4), (5, 6) .... " –

+0

Sie vermissen Kommas, aber Sie sollten ** auch ** Parameter ** für beide Werte verwenden - nicht nur für den ersten! Dies vermeidet SQL-Injection-Attacken - die Schwachstelle Nummer 1 im Web! –

Antwort

0

Es gibt keine Kommas zwischen jedem Satz von Einträgen Der SQL-Teil Ihrer Anweisung soll wie folgt aussehen:.

INSERT INTO User_images (Pictures,UserName) VALUES 
(@pic1,'" + username.Text + "'), --comma 
(@pic2,'" + username.Text + "'), --comma 
(@pic3,'" + username.Text + "'), --comma 
(@pic4,'" + username.Text + "'), --comma 
(@pic5,'" + username.Text + "'), --comma 
(@pic6,'" + username.Text + "')