Fórum DbExpress.. CommandText é case sensitive? #244514
26/07/2004
0
Passei por uma situação hj que me causou um certo espanto e gostaría da confirmação de vocês.
Na sexta-feira passada criei uma aplicação de teste para acessar uma tabela no Firebird com os componentes do DbExpress (SQLConection --> SQLDataSet --> DataSetProvider --> ClientDataSet). Testei e funcionou perfeitamente.
Hoje, voltei a criar mais um teste, porém acessando outra tabela, com os mesmos componentes e com as configurações exatamente iguais as que criei no sistema de sexta-feira. Qual foi a minha surpresa que os dados eram lidos mas não conseguia atualizá-los no servidor (método ApplyUpdates(-1)).
Para ter certeza que não era a tabela, busquei acessar a mesma tabela da aplicação de sexta-feira, porém continuava não atualizando o servidor.
Depois de muita peleja nesta tarde, verifiquei que a instrução select na propriedade CommandText do componente SQLDataSet da aplicação de hoje estava com letras minúsculas (mais precisamente o nome da tabela) e ao mudar para maiúscula o aplicativo funcionou corretamente.
Alguém já passou por situação parecida?
E sería correto afirmar, mediante este caso, que as instruções deverão ser inseridas em maiúsculas?
Agradecido a atenção..
Rafs
Curtir tópico
+ 0Posts
27/07/2004
Vieira_alex
Gostei + 0
27/07/2004
Xisto
OBS.: Faco acesso dbexpress da mesma forma que vc descreveu.
Gostei + 0
27/07/2004
Rafs
O meu servidor é W2K...
.....
A partir de ontem adotei tb colocar sempre as tabelas em maiúsculas...
Quase fiquei maluco procurando parâmetros que estivessem configurados erradamente que pudessem ocasionar isto. :?
Gostei + 0
27/07/2004
Biffi
Gostei + 0
28/07/2004
Rômulo Barros
Amigos, infelizmente o CommandText(ClientDataSet) e o Sql(TSqlQuery) são CaseSensitive(Minúsculas diferem de maiúsculas). Antes de postar esta mensagem, sofri bastante aqui com o exemplo:
Sql.Add(´Select * from [color=red:b73d670a44]clientes[/color:b73d670a44]´);
... ... ... // comandos
Post();
ApplyUpdates(0);// Erro aqui: Table or View Not Exists. No Key Specify.
Então, troquei o código para:
Sql.Add(´Select * from [color=red:b73d670a44]CLIENTES[/color:b73d670a44]´);
... ... ... // comandos
Post();
ApplyUpdates(0);// Não deu mais erro
:P :P :P :P :P :P :P :P :P :P :P
Gostei + 0
04/03/2005
Yallebr
O Command Text não é Caso sensivel. O banco de dados q vc´s estão utilizando é.
Yalle Cunha.
Gostei + 0
04/03/2005
Vieira_alex
Gostei + 0
07/03/2005
Rômulo Barros
A galera tá ´ acordando defunto ´ .. .. .. :roll: :roll:
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)