Problema com campo LOCAL utilizando ADO
Preciso manipular um banco de dados que está atualmente em Access, porém este banco possui algumas tabelas com um campo chamado LOCAL, se menciono este campo em um SQL
O ADO me retorna um erro ´Erro não especificado´. Já tentei utilizar Zeos mas também esbarrei no mesmo problema. Estou tentando usar o ADO devido ao problema com o ODBC ao manipular uma tabela com um campo memo. Muitas vezes o sistema me apresenta um erro sobre sequencia de caracteres truncada a direita... ou algo assim. Lendo no fórum vi que outros usuários já tiveram este problema e que optaram pelo ADO, porém para mim essa troca não funcionou como deveria por este problema com campos chamados LOCAL em algumas tabelas.
Agradeço a ajuda de todos.
SELECT LOCAL FROM CDEMPRES
O ADO me retorna um erro ´Erro não especificado´. Já tentei utilizar Zeos mas também esbarrei no mesmo problema. Estou tentando usar o ADO devido ao problema com o ODBC ao manipular uma tabela com um campo memo. Muitas vezes o sistema me apresenta um erro sobre sequencia de caracteres truncada a direita... ou algo assim. Lendo no fórum vi que outros usuários já tiveram este problema e que optaram pelo ADO, porém para mim essa troca não funcionou como deveria por este problema com campos chamados LOCAL em algumas tabelas.
Agradeço a ajuda de todos.
Techsoft
Curtidas 0
Respostas
Quadrado
24/02/2006
Pode ser que esta seja uma palavra reservada do motor de banco de dados. Tente trocar o nome do campo, apenas para teste, se funcionar deve ser este o problema. Eu uso ADO para conexão e acho que é uma ótima alternativa.
Boa sorte
Quadrado
Boa sorte
Quadrado
GOSTEI 0
Techsoft
24/02/2006
obrigado por responder amigo, mas sim, o problema é justamente este, como contornar essa questão do campo chamado LOCAL.... também imagino que deve ser um nome reservado e tal, mas como resolver isso... No momento estamos impossibilitados de trocar nome de campos nas tabelas.
O motivo: migração de sistema, não estamos contentes com o sistema que estamos usando hj e a empresa q desenvolve o sistema já não consegue nos acompanhar, deixaram muito a desejar. Agora estamos partindo para uma aplicação desenvolvida dentro da empresa. As duas aplicações deverão seguir em paralelo até a conclusão e substituição total da aplicação atual... até lá vamos ter q conviver com os defeitos do sistema atual e com a modelagem pífea que foi feita.
Bom, gostaria de deixar registrado que consegui contornar o problema do ODBC, portanto não teria mais a necessidade e urgencia de trocar a conexão, gostaria sim de usar ADO por questões de performance, mas não consegui ainda contornar o problema do campo LOCAL.
O que fiz para resolver o problema do campo MEMO no ODBC foi o seguinte:
No BeforePost da Query gravei os dados do campo MEMO em uma variável do tipo WideString.... após atribui NULL ao campo e gravei... interessante é que ao gravar NULL o erro não aparece... com isso.. fui no evento AfterPost e fiz um SQL que faz um UPDATE no registro e manda para dentro dele o conteúdo da variável que usei para armazenar os dados... assim funcionou e não tive mais problemas com o ODBC.
Se alguém conseguir desvendar algo sobre usar o campo LOCAL no ADO, ficaria muito grato.
Obrigado!
O motivo: migração de sistema, não estamos contentes com o sistema que estamos usando hj e a empresa q desenvolve o sistema já não consegue nos acompanhar, deixaram muito a desejar. Agora estamos partindo para uma aplicação desenvolvida dentro da empresa. As duas aplicações deverão seguir em paralelo até a conclusão e substituição total da aplicação atual... até lá vamos ter q conviver com os defeitos do sistema atual e com a modelagem pífea que foi feita.
Bom, gostaria de deixar registrado que consegui contornar o problema do ODBC, portanto não teria mais a necessidade e urgencia de trocar a conexão, gostaria sim de usar ADO por questões de performance, mas não consegui ainda contornar o problema do campo LOCAL.
O que fiz para resolver o problema do campo MEMO no ODBC foi o seguinte:
No BeforePost da Query gravei os dados do campo MEMO em uma variável do tipo WideString.... após atribui NULL ao campo e gravei... interessante é que ao gravar NULL o erro não aparece... com isso.. fui no evento AfterPost e fiz um SQL que faz um UPDATE no registro e manda para dentro dele o conteúdo da variável que usei para armazenar os dados... assim funcionou e não tive mais problemas com o ODBC.
Se alguém conseguir desvendar algo sobre usar o campo LOCAL no ADO, ficaria muito grato.
Obrigado!
GOSTEI 0
Bon Jovi
24/02/2006
Tenta entre colchetes:
select [LOCAL]
from CDEMPRES
ou
select [LOCAL] as seila
from CDEMPRES
select [LOCAL]
from CDEMPRES
ou
select [LOCAL] as seila
from CDEMPRES
GOSTEI 0
Quadrado
24/02/2006
Se não funcionar com o colchete, selecione todos os campos e use somente o Local.
Quadrado
Quadrado
GOSTEI 0