Estou apanhando das ´Aspas´ - Como usar aspas neste caso????
08/04/2003
0
Caros companheiros...
Acabei de colocar uma duvida no forum mas acho que fui infeliz ao tentar explicar que o problema se dava com uma string
Vejam abaixo:
Tenho que acrescentar as seguintes linhas a propr. SQL de um query:
dtmDados.QryBoletos.SQL[1] := ´Where Contabilidade=´True´;
Está dando um erro, pois tenho que finalizar a string com aspas e a palavra true já está entre aspas, então ficarao duas aspas seguidas, Vejam como tentei fazer:
dtmDados.QryBoletos.SQL[1] := ´Where Contabilidade=´True´´;
As duas aspas do fim da linha geram um erro e nao consigo rodar o programa.
Me ajudem por favor..
Um abraço.
Acabei de colocar uma duvida no forum mas acho que fui infeliz ao tentar explicar que o problema se dava com uma string
Vejam abaixo:
Tenho que acrescentar as seguintes linhas a propr. SQL de um query:
dtmDados.QryBoletos.SQL[1] := ´Where Contabilidade=´True´;
Está dando um erro, pois tenho que finalizar a string com aspas e a palavra true já está entre aspas, então ficarao duas aspas seguidas, Vejam como tentei fazer:
dtmDados.QryBoletos.SQL[1] := ´Where Contabilidade=´True´´;
As duas aspas do fim da linha geram um erro e nao consigo rodar o programa.
Me ajudem por favor..
Um abraço.
![Pablo_lima Pablo_lima](https://www.devmedia.com.br/imagens/fotoscolunistas/avatar/avatar-2.png)
Pablo_lima
Curtir tópico
+ 0
Responder
Posts
08/04/2003
Anonymous
Se o campo CONTABILIDADE for do tipo string:
´...Where Contabilidade=´+QuotEdStr(´True´);
Se for do tipo boolean:
´...Where Contabilidade=True´;//Sem aspas
´...Where Contabilidade=´+QuotEdStr(´True´);
Se for do tipo boolean:
´...Where Contabilidade=True´;//Sem aspas
Responder
08/04/2003
Julienmurray
Olha meu amigo, agora estou no meu serviço e não tenho a rotina que faz isso, mas eu acho que é assim:
Se for retornado caracter é assim:
Ex:
Select ..... where NomeCliente = ´ +´´´´+edit1.text + ´´´´+´
ou
Select ..... where NomeCliente = ´ +#39+edit1.text + 39+´
Senão me engano é assim
:roll: Espero ter te ajudado. Senão eu posto a resposta certa pra ti, quando eu estiver em casa. OK? :wink:
Se for retornado caracter é assim:
Ex:
Select ..... where NomeCliente = ´ +´´´´+edit1.text + ´´´´+´
ou
Select ..... where NomeCliente = ´ +#39+edit1.text + 39+´
Senão me engano é assim
:roll: Espero ter te ajudado. Senão eu posto a resposta certa pra ti, quando eu estiver em casa. OK? :wink:
Responder
08/04/2003
Hhhhhh
As alternativas apresentadas anteriormente resolvem o problema, mas para essa situação eu prefiro utilizar parâmetros. ex:
Apesar de aumentar a quantidade de linhas de código, eu prefiro que o Delphi gerencie a forma correta de montar o código SQL, nesse caso, ele próprio monta o código SQL substituindo o parâmetro [b:20728f0a5e]:RES[/b:20728f0a5e] pelo seu valor [b:20728f0a5e]´True´[/b:20728f0a5e]
dtmDados.QryBoletos.SQL[1] := ´Where Contabilidade=:RES´; dtmDados.QryBoletos.ParamByName(´RES´).AsBoolean := True;
Apesar de aumentar a quantidade de linhas de código, eu prefiro que o Delphi gerencie a forma correta de montar o código SQL, nesse caso, ele próprio monta o código SQL substituindo o parâmetro [b:20728f0a5e]:RES[/b:20728f0a5e] pelo seu valor [b:20728f0a5e]´True´[/b:20728f0a5e]
Responder
Clique aqui para fazer login e interagir na Comunidade :)