sempre usei quotedstr, mas agora está diferente - não entendi

17/10/2019

0

Meu sistema operacional - win 7 Pro SP1
Delphi XE4
Banco: Firebird 2.5.3

Sempre usei quotedstr, mas agora está diferente - não entendi

dentro do delphi quero fazer:

select * from OS WHERE faturado<>'S'

ou seja, acima usando aspas simples para o Firebird aceitar

no codigo, sempre fiz assim:

waux1:='select * from OS where faturado<>' + quotedstr('S')

mas esta semana começou a dar problema - fui ver o waux1 e estava com o seguinte conteudo:

'select * from OS where faturado<>''S'''

tentei também fazer sem sucesso:

waux1:='select * from OS where faturado<>' + '''' + 'S' + ''''

e

waux1:='select * from OS where faturado<>' + '"' + 'S' + '"'

tentei também um stringreplace no waux1 para tentar mudar as aspas - sem sucesso

Não estou conseguindo colocar as aspas simples
Renato Seres

Renato Seres

Responder

Posts

17/10/2019

Renato Seres

Matei a charada

O quotedstr do Delphi sempre gerará resultado com ASPAS SIMPLES

Exemplo de uso:
quotedstr('S')

O PROBLEMA QUE ESTAVA ME CONFUNDINDO ERA O DEBUG - NO DEBUG ELE SEMPRE MOSTRA COM VARIAVEIS DUPLAS

Mais informacoes:
https://stackoverflow.com/questions/30166781/quotedstr-replacing-double-quote-in-delphi-2010?rq=1

--------------------------------
Meu post original:

Meu sistema operacional - win 7 Pro SP1
Delphi XE4
Banco: Firebird 2.5.3

Sempre usei quotedstr, mas agora está diferente - não entendi

dentro do delphi quero fazer:

select * from OS WHERE faturado<>'S'

ou seja, acima usando aspas simples para o Firebird aceitar

no codigo, sempre fiz assim:

waux1:='select * from OS where faturado<>' + quotedstr('S')

mas esta semana começou a dar problema - fui ver o waux1 e estava com o seguinte conteudo:

'select * from OS where faturado<>''S'''

tentei também fazer sem sucesso:

waux1:='select * from OS where faturado<>' + '''' + 'S' + ''''

e

waux1:='select * from OS where faturado<>' + '"' + 'S' + '"'

tentei também um stringreplace no waux1 para tentar mudar as aspas - sem sucesso

Não estou conseguindo colocar as aspas simples
Responder

17/10/2019

Claudio Andrade

Veja se funciona dessa forma
waux1 := Format('select * from OS where faturado <> %s', [quotedstr('S')]);


Meu sistema operacional - win 7 Pro SP1
Delphi XE4
Banco: Firebird 2.5.3

Sempre usei quotedstr, mas agora está diferente - não entendi

dentro do delphi quero fazer:

select * from OS WHERE faturado<>'S'

ou seja, acima usando aspas simples para o Firebird aceitar

no codigo, sempre fiz assim:

waux1:='select * from OS where faturado<>' + quotedstr('S')

mas esta semana começou a dar problema - fui ver o waux1 e estava com o seguinte conteudo:

'select * from OS where faturado<>''S'''

tentei também fazer sem sucesso:

waux1:='select * from OS where faturado<>' + '''' + 'S' + ''''

e

waux1:='select * from OS where faturado<>' + '"' + 'S' + '"'

tentei também um stringreplace no waux1 para tentar mudar as aspas - sem sucesso

Não estou conseguindo colocar as aspas simples
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar