Array
(
)

Problema com quot;UPDATEquot; no SQL SERVER

Fialhott
   - 14 abr 2008

Fala galera :roll:

Seguinte: Estou desenvolvendo um projeto em VB.NET 2003 com SQL SERVER 2005 Express Edition.

O problema é que quando eu vou salvar os dados do meu formulário aparece esse erro:
´Additional Information: Colunm ´COLUNA´ is constrained be unique. Value ´11´ is already present.´

Sendo que o campo ´COLUNA´ da minha tabela é a chave primária e ela é Identity(Auto-incremento) e eu estou salvando os dados através de um SqlDataAdapter.

Se alguém poder me ajudar e desde já agradeço a todos.

Groove
   - 14 abr 2008

se a coluna é auto-incremento entaum não passe ela passe apenas os outros dados q o banco faz o papel de auto-incrementar sua ´coluna´.

valew!!!

Tomara ter ajudado!!

Fialhott
   - 14 abr 2008

Ok, mas o que ocorre é o seguinte.

1° eu configuro o SqlDataAdapter.(com todos os campos da minha tabela)

2° ai eu gero o dataset apartir desse SqlDataAdapter

3° e para salvar eu coloquei o código : ´SqlDataAdapter.Update(Dataset1)´

Mas em nenhum momento eu passo um valor para a chave primária da minha tabela e é ai que acontece o erro.

OBS: Eu tentei ´setar´ um valor nulo para a chave primaria da minha tabela atraves do Dataset, mas ele não aceitou. Tentei tbm na hora de gerar o SqlDataAdapter, não incluir a chave primaria, mas dai ele gerou somente ´SELECT´ e ´TABLE MAPPINS´.

Agradeço sua atenção..

Groove
   - 14 abr 2008

não querendo ser chato, mas tentando ajudar...
tem como colocar o codigo pra q a gente veja????

Fialhott
   - 14 abr 2008

vamo lá...

Private Sub Grava_Dados()
´Posição em que o dataset está
Dim POS As Long = Me.BindingContext(Me.DtsCidades1, ´Cidades´).Position

´Nome da cidade
Me.DtsCidades1.Cidades(POS).Cid_Nome = Me.TxtNome.Text

´UF da cidade
Me.DtsCidades1.Cidades(POS).Cid_UF = Me.CboUF.Text

Me.DtaCidades.Update(Me.DtsCidades1)
End If

E ai da o erro, mas você pode notar que eu não passei nenhum valor para a chave primária.Ah, a estrutura da minha tabela é a seguinte:
Cidade INT Identity,
Cid_Nome Varchar(100),
Cid_UF Varchar(2),
PRIMARY KEY(Cidade));

Valeu a força ai brother.

Groove
   - 16 abr 2008

putz desculpe a demora mas já conseguiu???

Fialhott
   - 17 abr 2008

Bah brother, pior que ainda não!!!

Fialhott
   - 08 ago 2008

galera, consegui resolver o ´brete´..

foi só dar um fill com o meu SqlDataAdapter e depois dar um clear no dataset e pronto..

´1°
SqlDataAdapter.Fill(Dataset1)

´depois
Dataset1.Clear()