ADODataset e banco ACCess
Estou desenvolvendo um projetinho para um banco de dados access no qual eu não posso mexer ou alterar nada.
Tem uma tabela de empresas que tem apenas o campo ´Empresa Nome´
Quando eu dou um insert no clientdataset ligado ao adodataset, eu consigo colocar o nome da empresa no dbedit e talz, mas quando eu dou um post, ocorre o erro ´Erro de sintaxe na instrução INSERT INTO´ O que eu devo fazer? não estou conseguindo inserir nenhum registro.
Grato
Tem uma tabela de empresas que tem apenas o campo ´Empresa Nome´
Quando eu dou um insert no clientdataset ligado ao adodataset, eu consigo colocar o nome da empresa no dbedit e talz, mas quando eu dou um post, ocorre o erro ´Erro de sintaxe na instrução INSERT INTO´ O que eu devo fazer? não estou conseguindo inserir nenhum registro.
Grato
Vitor Rubio
Curtidas 0
Respostas
Aroldo Zanela
27/02/2006
Colega,
Se possível, coloque um fragmento do código para avaliarmos.
Se possível, coloque um fragmento do código para avaliarmos.
GOSTEI 0
Vitor Rubio
27/02/2006
estou aqui no escritório e o código está em casa. Então só poderei mandar o código a noite. Mas o código é bem simples:
eu uso um TadoTable, mas com o TAdoDataSet ocorre a mesma coisa.
Tenho um provider ligado ao TAdoTable e um clientdataset ligado a esse provider. Quando eu dou um insert, beleza, preencho os campos e talz. Quando eu dou um post e um applyupdates(0) aí dá o problema. o código é isso: só insert e post.
Acho que tá dando esse problema porque o nome da tabela é composto de duas paçavras. Será que é isso?
vlw!
eu uso um TadoTable, mas com o TAdoDataSet ocorre a mesma coisa.
Tenho um provider ligado ao TAdoTable e um clientdataset ligado a esse provider. Quando eu dou um insert, beleza, preencho os campos e talz. Quando eu dou um post e um applyupdates(0) aí dá o problema. o código é isso: só insert e post.
Acho que tá dando esse problema porque o nome da tabela é composto de duas paçavras. Será que é isso?
vlw!
GOSTEI 0
Paullsoftware
27/02/2006
o erro está no applyUpdates(0);
já pensei em tirar ele...
eu sempre uso o seguinte:
nos eventos AffterPost e AffterDelete:
e não precisa usar o comando applyupdates... até onde sei ele deve ser usado somente se a propriedade CacheUpdates estiver como [b:dd78ec5d18]true[/b:dd78ec5d18]...
já pensei em tirar ele...
eu sempre uso o seguinte:
nos eventos AffterPost e AffterDelete:
if not conexao.InTransaction then conexao.BeginTrans; try if conexao.InTransaction then conexao.CommitTrans except if conexao.InTransaction then conexao.RollbackTrans; end;
e não precisa usar o comando applyupdates... até onde sei ele deve ser usado somente se a propriedade CacheUpdates estiver como [b:dd78ec5d18]true[/b:dd78ec5d18]...
GOSTEI 0
Vitor Rubio
27/02/2006
eu não me expresei bem:
como eu disse, eu uso um [b:86322ec447]clientdataset[/b:86322ec447] ligado a um [b:86322ec447]datasetprovider[/b:86322ec447] ligado a um [b:86322ec447]TAdoTable[/b:86322ec447].
quando eu dou insert, post e applyupdates, é no clientdataset e nunca no TAdoTable.
e tambem a mensagem de erro é totalmente diferente da mensagem que daria se eu desse applyupdates no TAdoTable sem cached updates.
como eu disse, eu uso um [b:86322ec447]clientdataset[/b:86322ec447] ligado a um [b:86322ec447]datasetprovider[/b:86322ec447] ligado a um [b:86322ec447]TAdoTable[/b:86322ec447].
quando eu dou insert, post e applyupdates, é no clientdataset e nunca no TAdoTable.
e tambem a mensagem de erro é totalmente diferente da mensagem que daria se eu desse applyupdates no TAdoTable sem cached updates.
GOSTEI 0