ERRO NO EDIT USANDO MYSQL
Olá gente, tudo bem?
Seguinte, estou migrando para Mysql meus sistemas que eram em Access e DAO, mas como meu tempo é curto e são muitos os sistemas, estou migrando para MySql e DAO mesmo, já que assim, só preciso acrescentar uma linha a mais no meu código, que é a linha de conexão.
Está tudo funcionando, só que por exemplo quando entro num cadastro para fazer uma alteração, mas NÃO altero nada e salvo dá um erro dizendo assim: [Ô]O mecanismo de bando de dados parou o processo porque outro usuário está tentando acessar o mesmo dado no mesma hora[Ô], mas se eu altero alguma coisa no cadastro não da erro.
Pq será?
Abraços e desde já agradecido!
Gustavo Fássio
Seguinte, estou migrando para Mysql meus sistemas que eram em Access e DAO, mas como meu tempo é curto e são muitos os sistemas, estou migrando para MySql e DAO mesmo, já que assim, só preciso acrescentar uma linha a mais no meu código, que é a linha de conexão.
Está tudo funcionando, só que por exemplo quando entro num cadastro para fazer uma alteração, mas NÃO altero nada e salvo dá um erro dizendo assim: [Ô]O mecanismo de bando de dados parou o processo porque outro usuário está tentando acessar o mesmo dado no mesma hora[Ô], mas se eu altero alguma coisa no cadastro não da erro.
Pq será?
Abraços e desde já agradecido!
Gustavo Fássio
Meu caro
Poste aqui o código que gera esse erro para podemos ajudá-lo melhor!!
Grato
Poste aqui o código que gera esse erro para podemos ajudá-lo melhor!!
Grato
tipo assim:
Tabela.edit
tabela!campo1=xx
tabela!campo2=yy
tabela.update o erro está aqui [txt-color=#e80000]SE[/txt-color] caso eu não tenha alterado os valores dos campos acima
se eu alterar o valor docampo1 ou do campo2 não dá erro
Obrigado pela atenção!
Tabela.edit
tabela!campo1=xx
tabela!campo2=yy
tabela.update o erro está aqui [txt-color=#e80000]SE[/txt-color] caso eu não tenha alterado os valores dos campos acima
se eu alterar o valor docampo1 ou do campo2 não dá erro
Obrigado pela atenção!
não tenho certeza, o ideal mesmo seria migrar para ADO, mas como vc não tem tempo, posso sugerir o seguinte
antes do update crie um sleect para localizar o registro a ser alterado.
depois de o update
antes do update crie um sleect para localizar o registro a ser alterado.
depois de o update
Olá Marcelo, obrigado pela atenção!
Então, mas eu faço um select antes, eu seleciono o registro e ai sim Edito.
é muito estranho, pois se eu alterar um ponto que seja já num dá problema...
O que eu poderia fazer ?
Obs.: Quando vcs criam tabela no MySql, o type delas vc colocam qual opção? eu estou colocando InnoDB. Está certo?
E o Character Set eu coloco Latin1.
abraços
Então, mas eu faço um select antes, eu seleciono o registro e ai sim Edito.
é muito estranho, pois se eu alterar um ponto que seja já num dá problema...
O que eu poderia fazer ?
Obs.: Quando vcs criam tabela no MySql, o type delas vc colocam qual opção? eu estou colocando InnoDB. Está certo?
E o Character Set eu coloco Latin1.
abraços
xiiii....pula fora.
nao da para garantir que .edit funcione, eh melhor usar update table....
nao da para garantir que .edit funcione, eh melhor usar update table....
Nossa WebMaster num faz isso comigo não, tá tudo funcionando certinho inclusive o .Edit ele só não funciona quando não altero nada no cadastro.
Sei que ADO seria o ideal mas por agora é impossÃvel eu mudar TUDO para ADO.
Abraços
Sei que ADO seria o ideal mas por agora é impossÃvel eu mudar TUDO para ADO.
Abraços
posta o codigo completo inclusive a parte que vc faz o select para mostrarmos como fazer a alteração sem muita mudança
Set Tabela = BD.OpenRecordset([Ô]SELECT * FROM ctr_ven WHERE CODIGO=[ô][Ô] + txtFields(0).Text + [Ô][ô][Ô], dbOpenDynaset)
Tabela.Edit
Tabela!nome = txtFields(1).Text
Tabela!endereco = txtFields(2).Text
Tabela!bairro = txtFields(3).Text
Tabela!cidade = txtFields(4).Text
Tabela!CEP = txtFields(5).Text
Tabela!rg = txtFields(6).Text
Tabela!CPF = txtFields(7).Text
Tabela!comissao = IIf(txtFields(8).Text = [Ô][Ô], 0, txtFields(8).Text)
Tabela!Senha = Text5.Text
Tabela([Ô]tipo[Ô]) = IIf(OptUsuario.Value = True, [Ô]U[Ô], [Ô]A[Ô]) [ô][Ô]U[Ô] de Usuáro, [Ô]A[Ô] de Administrador
Tabela([Ô]estado[Ô]) = ComboEstado.Text
Tabela.Update [txt-color=#007100]Se algum dos campos acima tiver o valor alterado não dá erro, mas se não alterar nenhum dá erro[/txt-color]
Obrigado pela atenção
Tabela.Edit
Tabela!nome = txtFields(1).Text
Tabela!endereco = txtFields(2).Text
Tabela!bairro = txtFields(3).Text
Tabela!cidade = txtFields(4).Text
Tabela!CEP = txtFields(5).Text
Tabela!rg = txtFields(6).Text
Tabela!CPF = txtFields(7).Text
Tabela!comissao = IIf(txtFields(8).Text = [Ô][Ô], 0, txtFields(8).Text)
Tabela!Senha = Text5.Text
Tabela([Ô]tipo[Ô]) = IIf(OptUsuario.Value = True, [Ô]U[Ô], [Ô]A[Ô]) [ô][Ô]U[Ô] de Usuáro, [Ô]A[Ô] de Administrador
Tabela([Ô]estado[Ô]) = ComboEstado.Text
Tabela.Update [txt-color=#007100]Se algum dos campos acima tiver o valor alterado não dá erro, mas se não alterar nenhum dá erro[/txt-color]
Obrigado pela atenção
veja se isto resolve
subistitua o código acima por este e veja se funciona
subistitua o código acima por este e veja se funciona
BD.OpenRecordset [Ô]UPDATE ctr_ven SET nome=[ô][Ô] & txtFields(1).Text & [Ô][ô],endereco=[ô][Ô] & txtFields(2).Text & [Ô][ô],bairro=[ô][Ô] & txtFields(3).Text & [Ô][ô],cidade=[ô][Ô] & txtFields(4).Text & [Ô][ô],cep=[ô][Ô] & txtFields(5).Text & [Ô][ô],rg=[ô][Ô] & txtFields(6).Text & [Ô][ô],cpf=[ô][Ô] & txtFields(7).Text & [Ô][ô],comissao=[ô][Ô] & txtFields(8).Text & [Ô][ô],senha=[ô][Ô] & Text5.Text & [Ô][ô],tipo=[ô][Ô] & IIf(OptUsuario.Value = True, [Ô]U[Ô], [Ô]A[Ô]) & [Ô][ô],estado=[ô][Ô] & ComboEstado.Text & [Ô][ô] WHERE codigo =[ô][Ô] & txtFields(0).Text & [Ô][ô][Ô], dbOpenDynaset
Caso o código do Marcelão n funfar...o q desacredito faça isso:
Sua tabela tem um indice de código né? caso n tenha, crie e faça o código
Tabela.Index = [Ô]IndiceCódigo[Ô] [ô] Coloque o Nome que vc deu ao indice no Access
Tabela.Seek [Ô]=[Ô], txtFields(0).Text
If Tabela.NoMatch = True msgbox [Ô]Erro ao Encontrar Registro[Ô]
Tabela.Edit
Tabela!nome = txtFields(1).Text
Tabela!endereco = txtFields(2).Text
Tabela!bairro = txtFields(3).Text
Tabela!cidade = txtFields(4).Text
Tabela!CEP = txtFields(5).Text
Tabela!rg = txtFields(6).Text
Tabela!CPF = txtFields(7).Text
Tabela!comissao = IIf(txtFields(8).Text = [Ô][Ô], 0, txtFields(8).Text)
Tabela!Senha = Text5.Text
Tabela([Ô]tipo[Ô]) = IIf(OptUsuario.Value = True, [Ô]U[Ô], [Ô]A[Ô]) [ô][Ô]U[Ô] de Usuáro, [Ô]A[Ô] de Administrador
Tabela([Ô]estado[Ô]) = ComboEstado.Text
Tabela.Update Se algum dos campos acima tiver o valor alterado não dá erro, mas se não alterar nenhum dá erro
Boa sorte!
Tópico encerrado , respostas não são mais permitidas