C# -> SQL Errore nella stringa di SQLCOMMAND

sabato 09 febbraio 2008 - 14.52

davide89v Profilo | Newbie

Il mio visual c# deve inserire dei dati in una tabella però, rivevo un errore riguardante la stringa durante l'esecuzione, qualcuno mi potrebbe aiutare, ecco la stringa:
Mi spuntano errori da tutti i lati
ecco l'errore

{
Sintassi non corretta in prossimità di ','.
Virgoletta di chiusura mancante dopo la stringa di caratteri ',',',',',',',',',',',)'
}

HO PROVATO A CARICARE I RECORD SIA CON TEXTBOX RIEMPITI CHE VUOTI, CIOè CON VALORE NULL

cmd.CommandText ="INSERT INTO anagraficaazienda VALUES ('"+textBox1.Text+"','"+comboBox2.Text +"','"+textBox2.Text+"','"+textBox3.Text+"',"+comboBox2.Text+",'"+textBox4.Text+"','"+textBox5.Text+"',"+textBox6.Text+",'"+textBox7.Text+"',"+textBox8.Text+","+","+textBox9.Text+","+textBox10.Text+","+textBox11.Text+",'"+textBox12.Text+"',"+textBox13.Text+","+textBox14.Text+","+textBox15.Text+",'"+textBox16.Text+"','"+textBox17.Text+"','"+textBox18.Text+"','"+textBox19.Text+"','"+textBox20.Text+"',"+comboBox3.Text+"','"+textBox21.Text+"','"+textBox22.Text+"','"+textBox23.Text+"','"+textBox24.Text+"','"+textBox25.Text+"','"+textBox26.Text+"','"+textBox27.Text+"','"+textBox28.Text+"','"+textBox29.Text+"','"+textBox30.Text+"',"+comboBox4.Text+")";

lbenaglia Profilo | Guru

>cmd.CommandText ="INSERT INTO anagraficaazienda VALUES ('"+textBox1.Text+"','"+comboBox2.Text...
Per evitare qualunque errore relativo a stringhe che contentagono apici, valori NULL, migliorare le prestazioni ed ovviare al SQL Injection, incapsula il tuo codice SQL in stored procedure parametriche che andrai a richiamare lato client tramite la classe sqlCommand, valorizzando i parametri mediante la collection Parameters.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org

davide89v Profilo | Newbie

non so cosa sono queste stored parametriche

lbenaglia Profilo | Guru

>non so cosa sono queste stored parametriche
Fai riferimento al seguente paragrafo sui Books Online:

"Stored Procedures (Database Engine)"
http://msdn2.microsoft.com/en-us/library/ms190782.aspx

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org

davide89v Profilo | Newbie

Grazie, ho risolto il problema.
Un altra domanda, ora che ho caricato dei dati in una tabella, li dovrei leggere da un altro programma, usando l'oggetto datareader.

Per usarlo, lo dichiaro e gli assegno i dati che l'oggetto sql command gli ritorna
SQLDATAREADER leggi = cmd(sqlcommand).ExecutedReader();
qui sopra mi da un errore: che sql datareader non è definito come costruttore

una volta letti li stampo a video
Console.WriteLine ("leggi.getchar(0) + leggi.getchar (1)");

Penso che il codice sia sbagliato.
Inoltre il metodo leggi.getchar mi da il seguente errrore

nessun overload del metodo getchar accetta 1 argomenti

aiutami please

Ah un altro cosa, per aprire un sqldatareader precedentemente chiuso che devo fare?
il metodo .open non esiste per questo oggetto
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5