SALVAR DADOS ACCESS

DANIELFELIX91 21/11/2011 16:42:58
#389611
Boa Tarde pessoal, cá estou Eu fazendo mais perguntas...

Eu criei formulários para cadastro de clientes, o meu problema é na hora de salvar quando altero os dados.
*quando clico no botao cadastrar ele salva todas as informações corretamente.
*quando clico para consultar ele abre as informações no mesmo formulário de cadastramento porem todos enabled=false, entao quando clico no botaão alterar todos os campos ficam enabled=true, porem quando altero algum dado e clico no salvar me da um errooo...

segue em anexo o print da tela para que voces possam me ajudar

Desde já muito Obrigado!!!
KERPLUNK 21/11/2011 16:44:53
#389612
Olha, a mensagem está clara, vc está tentando inserir um registro que criaria valores duplicados no índice(chave primária), o que vc deveria estar estar fazendo é UPDATE e não INSERT
DANIELFELIX91 21/11/2011 17:09:01
#389618
amigo você pode me ajudar a fazer update?

ainda estou no começo entao nao entendo muito... Eu só troquei o insert pelo update mais deu erro de sintaxe de instrução UPDATE.

Muito Obrigado.
PHOENIX209E 21/11/2011 17:16:26
#389620
A intrução SQL de UPDATE é assim:

UPDATE TABELA SET NOME = [ô]EDUARDO[ô],IDADE = 21,SEXO = [ô]M[ô]


apenas um exemplo,só adaptar ao seu codigo.
Abraços!
DANIELFELIX91 21/11/2011 17:20:56
#389622
Amigo ainda não funcionou...
ficaria assim o codigo?
lembrando que o nome da minha tabela é CLIENTE.

Desculpa estar encomodando...

Dim strsql As String

strsql = [Ô]UPDATE TABELA SET cliente (codigo, nome, empresa, cnpj, endereco, num, bairro, cidade, uf, tel, cel, email)[Ô] & [Ô]values ([Ô] & txtncad.Text & [Ô], [ô][Ô] & txtnome.Text & [Ô][ô], [ô][Ô] & txtemp.Text & [Ô][ô], [ô][Ô] & mskcnpj.Text & [Ô][ô], [ô][Ô] & txtend.Text & [Ô][ô], [ô][Ô] & txtnum.Text & [Ô][ô], [ô][Ô] & txtbairro.Text & [Ô][ô], [ô][Ô] & txtcid.Text & [Ô][ô], [ô][Ô] & txtuf.Text & [Ô][ô], [ô][Ô] & msktel.Text & [Ô][ô], [ô][Ô] & mskcel.Text & [Ô][ô], [ô][Ô] & txtmail.Text & [Ô][ô])[Ô]
conecta.Execute(strsql)
MsgBox([Ô]Seus dados foram incluídos com sucesso[Ô], MsgBoxStyle.Information, [Ô]Dados Gravados[Ô])
MGALDINO 21/11/2011 17:29:54
#389623
Resposta escolhida
DANIELFELIX91 foi como o amigo acima falou essa instrução que voce esta fazendo seria um insert


Insert Into Cliente (Codigo,Nome....) Values (1, [ô]DANIELFELIX91[ô]....)

Update seria...

Update Cliente Set Nome = [ô]Novo Nome[ô] , Idade = 22...
Where Codigo = 1
DANIELFELIX91 21/11/2011 17:36:40
#389624
etendi... mais como esta sendo em bd access Eu posso no lugar do [ô]NOVO NOME[ô], 22 ... Eu posso colocar txtnome / txtendereco / txtcidade e assim por diante?
para que ele salve os arquivos que foram alterados no textbox?
FILMAN 21/11/2011 23:55:52
#389645
Caro Colega trabalhe com orientação a objetos é mais facil

Exemplo:
INSERIR
Dim SQL As String = [Ô]INSERT INTO Clientes (codigo,nome,empresa,cnpj,endereco,num,bairro,cidade,uf,tel,cel,email) VALUES (@Cod, @Nome, @Emp, @Cnpj, @End, @Num, @Bairro, @Cid, @Uf, @Tel, @Cel, @Email)[Ô]

Dim Con As OleDbConnection = New OleDbConnection([Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=[Ô] + Application.StartupPath + [Ô]\SeuBanco.mdb[Ô])

Dim Comm As New OleDbCommand(SQL, Con)

Comm.Parameters.Add(New OleDbParameter([Ô]@Cod[Ô], TxtCodigo.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Nome[Ô], TxtNome.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Emp[Ô], TxtEmpresa.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Cnpj[Ô], TxtCnpj.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@End[Ô], TxtEnd.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Num[Ô], TxtNumero.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Bairro[Ô], TxtBairro.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Cid[Ô], TxtCidade.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Uf[Ô], TxtUf.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Tel[Ô], TxtTelefone.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Cel[Ô], TxtCelular.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Email[Ô], TxtEmail.Text))

Con.Open()
Try
Comm.ExecuteNonQuery()
MsgBox([Ô]Seus Dados Foram Inseridos com Sucesso!!!, MsgBoxStyle.Information, [Ô]Dados Gravados[Ô])
Con.Close()
Catch
Con.Close()
Finally
Limpa()
End Try


ALTERAR
Dim SQL as String = [Ô]UPDATE Clientes SET nome=@Nome, empresa=@Emp, cnpj=@Cnpj, endereco=@End, num=@Num, bairro=@Bairro, cidade=@Cid, uf=@Uf, tel= @Tel, cel=@Cel, email=@Email WHERE codigo=@Cod[Ô]

Dim Con As OleDbConnection = New OleDbConnection([Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=[Ô] + Application.StartupPath + [Ô]\SeuBanco.mdb[Ô])

Dim Comm As New OleDbCommand(SQL, Con)

Comm.Parameters.Add(New OleDbParameter([Ô]@Cod[Ô], TxtCodigo.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Nome[Ô], TxtNome.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Emp[Ô], TxtEmpresa.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Cnpj[Ô], TxtCnpj.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@End[Ô], TxtEnd.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Num[Ô], TxtNumero.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Bairro[Ô], TxtBairro.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Cid[Ô], TxtCidade.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Uf[Ô], TxtUf.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Tel[Ô], TxtTelefone.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Cel[Ô], TxtCelular.Text))
Comm.Parameters.Add(New OleDbParameter([Ô]@Email[Ô], TxtEmail.Text))

Con.Open()
Try
Comm.ExecuteNonQuery()
MsgBox([Ô]Seus Dados Foram Alterados com Sucesso!!!, MsgBoxStyle.Information, [Ô]Dados Alterados[Ô])
Con.Close()
Catch
Con.Close()
Finally
Limpa()
End Try


DELETE
Dim SQL as String = [Ô]DELETE * FROM Clientes WHERE codigo=@Cod[Ô]

Dim Con As OleDbConnection = New OleDbConnection([Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=[Ô] + Application.StartupPath + [Ô]\SeuBanco.mdb[Ô])

Dim Comm As New OleDbCommand(SQL, Con)

Comm.Parameters.Add(New OleDbParameter([Ô]@Cod[Ô], TxtCodigo.Text))

Con.Open()
Try
Comm.ExecuteNonQuery()
MsgBox([Ô]O Cadastro foi Excluído com Sucesso!!!, MsgBoxStyle.Information, [Ô]Dados Deletado[Ô])
Con.Close()
Catch
Con.Close()
Finally
Limpa()
End Try


Bom creio que com o access seja assim espero ter ajudado.
KARY92 22/11/2011 06:39:24
#389650
Olá FILMAN !

E como seria em VB-6 ?
ando procurando fazer dessa maneira...

se puder, responda neste link, que poderei pontuá-lo:
http://www.vbmania.com.br/pages/index.php?varModulo=Forum&varMethod=abrir&varID=389508&varWorld=

Obrigada !
KARY92 22/11/2011 09:31:56
#389677
Num é não... é vb.net kkkkkkkkk
e é [Ô]amiga[Ô]...não [Ô]amigo[Ô] kkkkkkkkkkk

mas obrigada, ele respondeu em meu tópico.
MGALDINO 22/11/2011 09:54:31
#389690

etendi... mais como esta sendo em bd access Eu posso no lugar do [ô]NOVO NOME[ô], 22 ... Eu posso colocar txtnome / txtendereco / txtcidade e assim por diante?
para que ele salve os arquivos que foram alterados no textbox?



Sim Claro, coloquei apenas para vc entender como ficaria o codigo.
Página 1 de 2 [12 registro(s)]
Tópico encerrado , respostas não são mais permitidas