ERRO COMANDO UPDATE

VINICIUS2445 06/08/2015 14:43:10
#449672
Gente, eu fiz um update para alterar alguma informação de meus produtos cadastrados, só que está dando esse erro, pois minha chave primária tem a autonumeração, e eu clicando m novo, um novo código é gerado, não dando pra alterar, mas no caso, eu quero alterar as outras coisas, não o código...

E mais uma coisa, na hora de eu consultar o produto, eu consulto pelo código do produto, o campo é autonumérico, que não da pra alterar, só que, como eu tenho que consultar pra dps alterar, o usuário tinha que ter a disposição esse campo, só que ele não pode alterar esse campo, se n ferra kkkk[ô], e não estou conseguindo sair disso, se conseguirem me ajudar em relação a isso, agradeceria mto.
F001E 06/08/2015 16:54:05
#449679
Posta o código SQL do Update para ver como você fez....
VINICIUS2445 06/08/2015 17:41:00
#449681
Dim sql As String = [Ô]update Cad_Prod set CodProd=@CodProd, Nome=@Nome, Valor=@Valor, imagem=@Imagem, Quantidade=@Quantidade where CodProd=[Ô] & TextBox1.Text
Dim cm As New OleDb.OleDbCommand(sql, dbcon)
cm.Parameters.AddWithValue([Ô]@CodProd[Ô], TextBox1.Text)
cm.Parameters.AddWithValue([Ô]@Nome[Ô], TextBox2.Text)
cm.Parameters.AddWithValue([Ô]@Valor[Ô], TextBox3.Text)
cm.Parameters.AddWithValue([Ô]@Imagem[Ô], TextBox4.Text)
cm.Parameters.AddWithValue([Ô]@Quantidade[Ô], TextBox5.Text)
Try
dbcon.Open()
cm.ExecuteNonQuery()
dbcon.Close()
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
dbcon.Close()
End Sub







JABA 06/08/2015 18:16:55
#449683
Resposta escolhida
Se o [Ô]CodProd[Ô] estiver como auto-numeracao, então vai dar erro mesmo. Faça dessa maneira pra ver se vai:

Dim sql As String = [Ô]update Cad_Prod set Nome=@Nome, Valor=@Valor, imagem=@Imagem, Quantidade=@Quantidade where CodProd=[Ô] & TextBox1.Text
Dim cm As New OleDb.OleDbCommand(sql, dbcon)
cm.Parameters.AddWithValue([Ô]@Nome[Ô], TextBox2.Text)
cm.Parameters.AddWithValue([Ô]@Valor[Ô], TextBox3.Text)
cm.Parameters.AddWithValue([Ô]@Imagem[Ô], TextBox4.Text)
cm.Parameters.AddWithValue([Ô]@Quantidade[Ô], TextBox5.Text)
Try
dbcon.Open()
cm.ExecuteNonQuery()
Catch ex As Exception
MessageBox.Show(ex.Message)
Finally
dbcon.Close()
End Try
End Sub
VINICIUS2445 06/08/2015 22:10:43
#449693
Obrigado, deu certo, mas o que mudou que não entendi muito bem, gostaria de entender, ai já encerrarei o tópico e te pontuarei...
JABA 06/08/2015 23:09:33
#449695
O campo [Ô]CodProd[Ô] do seu banco de dados não está para alteração. Creio que ele deva estar como auto-numeracao, por isso sempre dava erro. O que eu fiz foi apenas tirar esse campo do seu código.
Tópico encerrado , respostas não são mais permitidas