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
App. WinForms / WPF .NET
OLEDB COMMAND
martedì 07 giugno 2005 - 13.47
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Babi
Profilo
| Junior Member
197
messaggi | Data Invio:
mar 7 giu 2005 - 13:47
Ciao, oggi sono un pò nei casini... :)
1. Ho definito un oledb command
public cmd1as New OleDb.OleDbCommand
2. preparo i campi del db per la scrittura
With cmd1
.CommandText = cls_b.Insert1 ' istruzione di insert into...
.Parameters.Add("@cod_applicativo", strFormat.Char).Value = cls_b.cod_applicativo
.Parameter.............
end with
3. eseguo il comando
conn.Open()
cmd1.ExecuteNonQuery()
conn.Close()
RIESCO A SCRIVERE IL PRIMO RECORD. QUANDO TENTO DI SCRIVERE IL SECONDO RECORD
DI DA' UN ERRORE DB_E_BADORDINAL.(????)
MA SI PUO' UTILIZZARE UNO STESSO COMAND PIU' DI UNA VOLTA??
MI AIUTATE?? GRAZIE!!!
Babi
Profilo
| Junior Member
197
messaggi | Data Invio:
mar 7 giu 2005 - 15:37
Mi sono risposta da sola. ogni volta devo riassegnare il command!!!
:)
ciao
McSxp
Profilo
| Newbie
25
messaggi | Data Invio:
gio 9 giu 2005 - 12:19
In realtà non è necessario che reinizializzi il comand diventa pesante se le query sono diverse, puoi benissimo eseguire una serie di query sucessive, ma devi lavorare in Transaction mode, ovvero aprire e chiudere una transazione prima e dopo il tuo command...
Ti allego queste due righe che ho estrapolato, spero di non aver tralasciato nulla nel ritaglio... l'esempio è per SQL ma credo ci sia l'esatto equivalente anche in OLEDB è sufficiente sostituire le dichiarazioni.
( Tra l'altro credo sia forse meglio per fare queste cose tirare un occhio verso l'ADO ;) )
Dim Cn As SqlConnection
Dim oDr As SqlClient.SqlDataReader
myTrans = Cn.BeginTransaction()
oCmd = New SqlClient.SqlCommand()
oCmd.Connection = Cn
oCmd.Transaction = myTrans
oCmd.CommandTimeout = 15
szQuery = ".... your Query...."
oCmd.CommandText = szQuery
oDr = oCmd.ExecuteReader()
If oDr.Read Then
myfild = oDr.Item("myfield")
...
...
End if
oDr.Close()
szQuery = ".... your Query...."
oCmd.CommandText = szQuery
oCmd.ExecuteNonQuery()
myTrans.Commit()
Cn.Close()
Finchè non esegui la Commit puo eseguire le query.
Ciao
McSxp
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 !