Ciao a tutti ho una difficoltà che non riesco a gestire, non so cosa mi sto perdendo(probabilmente una minch°ata)
engo al nodo devo aggiornare un db access (mdb) questo db ha quasi tutto stringhe all'interno, e un campi ID che è un autonumber. Ecco come ho fatto io, però non vado oltre dall'errore di sintassi. riuscite a dirmi dove sto sbagliando?
io non riesco a vederlo, ho provato facendo anceh così:
Update tnode set InvoiceNBR=?,Spname=? etc etc idem.
e l'errrore non varia System.Data.OleDb.OleDbException: 'Syntax error in UPDATE statement.'
str = "Update Tnode Set InvoiceNBR=@InvoiceNBR, Spname=@Spname, SpGci=@SpGci, Invdate=@Invdate, Status=@Status, Comment=@Comment, User=@User, Branch=@Branch, ID=@ID, createdate=@createdate, purchaseorder=@purchaseorder, amount=@amount, docspath=@docspath WHERE InvoiceNBR=@InvoiceNBR AND SpGci=@SpGci and ID=@ID"
' str = "Update Tnode Set @InvoiceNBR, @Spname, @SpGci, @Invdate, @Status, @Comment, @User, @Branch, @createdate, @purchaseorder, @amount, @docspath WHERE @InvoiceNBR AND @SpGci"
cmdUpdate = New OleDbCommand(str, cnnOLEDB)
cmdUpdate.Parameters.AddWithValue("@InvoiceNBR", TextBox2.Text)
cmdUpdate.Parameters.AddWithValue("@Spname", TextBox6.Text)
cmdUpdate.Parameters.AddWithValue("@SpGci", TextBox1.Text)
cmdUpdate.Parameters.AddWithValue("@Invdate", TextBox5.Text)
cmdUpdate.Parameters.AddWithValue("@Status", fstats)
cmdUpdate.Parameters.AddWithValue("@Comment", TextBox7.Text)
cmdUpdate.Parameters.AddWithValue("@User", username1)
cmdUpdate.Parameters.AddWithValue("@Branch", osetbranch)
cmdUpdate.Parameters.AddWithValue("@ID", ASFRO)
cmdUpdate.Parameters.AddWithValue("@createdate", dates)
cmdUpdate.Parameters.AddWithValue("@purchaseorder", TextBox4.Text)
cmdUpdate.Parameters.AddWithValue("@amount", TextBox3.Text)
cmdUpdate.Parameters.AddWithValue("@docspath", pathexplorer)
cmdUpdate.ExecuteNonQuery()
MsgBox("tbc")
cmdUpdate.Dispose()
cmdOLEDB.Dispose()
cnnOLEDB.Close()
cnnOLEDB.Dispose()
Ho provato a riscriverla ocsì, qui l'errore invece è : System.Data.OleDb.OleDbException: 'Data type mismatch in criteria expression.'
cmdUpdate.CommandText = "Update [Tnode] Set [InvoiceNBR] ='" & TextBox2.Text & "',[Spname]= '" & TextBox6.Text & "',[SpGci]= '" & TextBox1.Text & "',[Invdate]= '" & TextBox5.Text & "',[Status]= '" & fstats & "',[Comment]= '" & TextBox7.Text & "',[User]= '" & username1 & "',[Branch]= '" & osetbranch & "',[createdate]= '" & dates & "',[purchaseorder]= '" & TextBox4.Text & "',[amount]='" & TextBox3.Text & "',[docspath]= '" & pathexplorer & "'WHERE [InvoiceNBR]= '" & TextBox2.Text & "' AND [SpGci]= '" & TextBox1.Text & "' AND [ID]= '" & ASFRO & "';"
cmdUpdate.CommandType = CommandType.Text
cmdUpdate.Connection = cnnOLEDB
cmdUpdate.ExecuteNonQuery()
MsgBox("Update Fixed")
cmdOLEDB.Dispose()
cmdUpdate.Dispose()
cnnOLEDB.Close()
cnnOLEDB.Dispose()