Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
.NET Framework
"INSERT INTO" ALL'INTERNO DI UN CICLO "FOR...NEXT"
lunedì 28 aprile 2008 - 13.16
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
172690
Profilo
| Junior Member
61
messaggi | Data Invio:
lun 28 apr 2008 - 13:16
Salve a tutti, ho il seguente problema:
devo fare nelle inser in una tabella un numero di volte che mi viene passato dall'esterno, e per questo utilizzo un ciclo for..next.
Vi metto qui sotto una versione ridotta del mio codice, magari vedete dove sbaglio oppure potete darmi un suggerimento su una strada diversa da seguire.
Con il codice qui sotto, mi fa il primo inserimento SENZA problemi e quando arriva a fare il secondo si blocca, executeNonQuery, dicendomi
"Eccezione first-chance di tipo "System.Data.OleDbException" in Sistem.Data.dll"
Nota: la chiave è formata da Campo_A, Campo_B, Campo_C; e questo ultimo cambia ad ogni ciclo
...
Estraggo il numero di volte da fare il for
dim objCommand as OleDbCommand = New OleDbCommand
objCommand.Connection = objConnectio
dim cont as integer
For cont = 1 to numero_volte
calcolo Valore_Campo_C
objCommand.CommandText = "INSERT INTO nome_Tabella" & "Campo_A, Campo_B, Campo_C, Campo_D)" & "VALUES(@Campo_A, @Campo_B, @Campo_C, @Campo_D)"
objCommand.Parameters.AddWith("@Campo_A", Valore_Campo_A)
objCommand.Parameters.AddWith("@Campo_B", Valore_Campo_B)
objCommand.Parameters.AddWith("@Campo_C", Valore_Campo_C)
objCommand.Parameters.AddWith("@Campo_D", Valore_Campo_D)
objConnection.Open()
objCommand.ExecuteNonQuery()
objConnection.Close()
Next
Vi ringrazio infinitamente!
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
lun 28 apr 2008 - 13:23
>Salve a tutti, ho il seguente problema:
>devo fare nelle inser in una tabella un numero di volte che mi
>viene passato dall'esterno, e per questo utilizzo un ciclo for..next.
>Vi metto qui sotto una versione ridotta del mio codice, magari
>vedete dove sbaglio oppure potete darmi un suggerimento su una
>strada diversa da seguire.
>Con il codice qui sotto, mi fa il primo inserimento SENZA problemi
>e quando arriva a fare il secondo si blocca, executeNonQuery,
>dicendomi
>"Eccezione first-chance di tipo "System.Data.OleDbException"
>in Sistem.Data.dll"
Dovresti fornirci il messaggio di errore completo.
Il problema potrebbe essere sulle foreign key, sul formato di campi, ecc.. Ma devi passarci il messaggio di errore..
Alx81 =)
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
lun 28 apr 2008 - 13:33
Ciao
>Estraggo il numero di volte da fare il for
>dim objCommand as OleDbCommand = New OleDbCommand
>objCommand.Connection = objConnectio
>dim cont as integer
>For cont = 1 to numero_volte
> calcolo Valore_Campo_C
>objCommand.CommandText = "INSERT INTO nome_Tabella" & "Campo_A,
>Campo_B, Campo_C, Campo_D)" & "VALUES(@Campo_A, @Campo_B, @Campo_C,
>@Campo_D)"
Qui manca un Clear dei Parameters in questo modo:
objCommand.Parameters.Clear
In questo modo i parametri vengono eliminati per poter essere riaggiunti, diversamente ti solleva un'eccezione
> objCommand.Parameters.AddWith("@Campo_A", Valore_Campo_A)
>objCommand.Parameters.AddWith("@Campo_B", Valore_Campo_B)
> objCommand.Parameters.AddWith("@Campo_C", Valore_Campo_C)
> objCommand.Parameters.AddWith("@Campo_D", Valore_Campo_D)
> objConnection.Open()
> objCommand.ExecuteNonQuery()
> objConnection.Close()
>Next
>
>
>Vi ringrazio infinitamente!
Di nulla, ciao
Alessandro
http://blogs.dotnethell.it/alebadalin
172690
Profilo
| Junior Member
61
messaggi | Data Invio:
lun 28 apr 2008 - 13:45
Ti ringrazio: era proprio quello che ci voleva...
Me lo dimentico sempre :-)
Grazie ancora e buona giornata!
172690
Profilo
| Junior Member
61
messaggi | Data Invio:
lun 28 apr 2008 - 13:46
Purtroppo mi dice solo quello :-(
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
lun 28 apr 2008 - 13:53
Di nulla
se ritieni la risposta soddisfacente chiudi il Thread accettando la risposta.
Ciao
Alessandro
http://blogs.dotnethell.it/alebadalin
SCUSA, HO VISTO CHE HAI GIA' ACCETTATO... CIAO
ALE
Torna su
Stanze Forum
Elenco Threads
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 !