Fórum String SQL Incorreta dando problema #265729
17/01/2005
0
Quero agradecer os amigos Thomaz e Isabel mas....
Muitos me ajudaram mas infelizmente não deu certo
O que poderia estar dando de errado nesta instrução do SQL.
Dm.cds_Servico.Close;
Dm.SQLDataSet1.Close;
Dm.SQLDataSet1.CommandText := ´select * from OS where Upper(controle) <> ´ + QuotedStr(´B´);
Dm.SQLDataSet1.Open;
Dm.cds_Servico.Open;
O que eu quero é bem simples, quero mostrar todos os registros da tabela OS cujo campo controle seja diferente de B.
Resumindo o campo controle é para controlar os registros que ja foram dado baixa e não poderão ser mais mostrados na grid.
Parece fácil, mas infelismente, algumas instruções postadas não deram certo. ele mostra todos os registros sem filtrar.
Gostaria de ajuda.
O campo Controle é Char(1)
Obrigado a todos.
Objetiva Creator
Objetivacreator
Curtir tópico
+ 0Posts
18/01/2005
Thomaz_prg
Outra coisa, qual banco de dados está usando, e no caso de ser Firebird, qual dialeto?
Gostei + 0
18/01/2005
Objetivacreator
Obrigado pela ajuda.
Estou usando Firebird com o dialeto 3.
Pelo que percebi, usando SqlDataSet, DataSetProvider, ClienteDataSet e DataSource, esta sendo um pouco complicado entender todos os recursos que eles tem a oferecer, Creio que estou fazendo o básico do básico, pois estudo pequenos exemplos baixados da net outros em livros e quando me deparo com pequenos problemas não sei resolver.
Espero conseguir superar estas limitações, pois usava muito o BDE e não tinha tanto problema como estou tendo agora.
Mas sou persistente e vou conseguir entender realmente todos os recursos oferecidos.
Bom,
Em vez de utilizar SQlDataSet1 e usar o SqlDataSet do conjunto
Exemplo de uso.
SqlDataSet propriedade Name : dst_Servico
DataSetProvider propriedade Name : dsp_Servico
ClienteDataSet Propriedade Name : cds_Servico
DataSource Propriedade Name : ds_Servico
Pelo que observei conforme a sua explicação, a propriedade DataSet esta apontando para dst_Servico e não SqlDataSet1.
Se eu mudar provavelmente vai dar certo, mas isto poderia influênciar no cadastro, alteração de registro, pois estou usando comandos insert e update para tais operações que estão dando certo sem fazer a alteração do dataset para sqlDataSet1.
Seu eu utilizar o dst_Servico em vez do SQLDataSet1, poderia dar certo ?, teria que mudar alguma propriedade em algum componente de acesso.
Obrigado mais uma vez pela ajuda.
Valnei.
Gostei + 0
18/01/2005
Objetivacreator
Obrigado pela ajuda.
Estou usando Firebird com o dialeto 3.
Pelo que percebi, usando SqlDataSet, DataSetProvider, ClienteDataSet e DataSource, esta sendo um pouco complicado entender todos os recursos que eles tem a oferecer, Creio que estou fazendo o básico do básico, pois estudo pequenos exemplos baixados da net outros em livros e quando me deparo com pequenos problemas não sei resolver.
Espero conseguir superar estas limitações, pois usava muito o BDE e não tinha tanto problema como estou tendo agora.
Mas sou persistente e vou conseguir entender realmente todos os recursos oferecidos.
Bom,
Em vez de utilizar SQlDataSet1 e usar o SqlDataSet do conjunto
Exemplo de uso.
SqlDataSet propriedade Name : dst_Servico
DataSetProvider propriedade Name : dsp_Servico
ClienteDataSet Propriedade Name : cds_Servico
DataSource Propriedade Name : ds_Servico
Pelo que observei conforme a sua explicação, a propriedade DataSet esta apontando para dst_Servico e não SqlDataSet1.
Se eu mudar provavelmente vai dar certo, mas isto poderia influênciar no cadastro, alteração de registro, pois estou usando comandos insert e update para tais operações que estão dando certo sem fazer a alteração do dataset para sqlDataSet1.
Seu eu utilizar o dst_Servico em vez do SQLDataSet1, poderia dar certo ?, teria que mudar alguma propriedade em algum componente de acesso.
Obrigado mais uma vez pela ajuda.
Valnei.
Gostei + 0
18/01/2005
Emerson Nascimento
Dm.cds_Servico.Close;
Dm.cds_Servico.CommandText := ´select * from OS where Upper(controle) ´ + QuotedStr(´B´);
Dm.cds_Servico.Open;
o seu campo controle tem tamanho 1?
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)