2012/8/6 Anselmo Silva <anselmo....@gmail.com> > Euler, desculpe-me pelo top-posting, não tive a intenção. > Já está nos planos a atualização, mas, por hora, tem um problema ao > aplicar sua sugestão. talvez por inexperiência minha. > > Na aplicação o campo de busca oferece ao usuário uma opção de buscar: > (1)*Pelo Início do termo* - Assim faço: (SELECT NOME FROM PROD WHERE NOME > LIKE '\%'); > (2)*Em qualquer parte do termo* - Assim faço: (SELECT NOME FROM PROD > WHERE NOME LIKE '%\%'); > (3)*Pelo Fim do termo* - Assim faço: (SELECT NOME FROM PROD WHERE NOME > LIKE '%\'); AVISO: uso de \' fora do padrão em cadeia de caracteres > (4)S*omente o Termo* - Assim faço: (SELECT NOME FROM PROD WHERE NOME LIKE > '\');AVISO: uso de \' fora do padrão em cadeia de caracteres > > Use duas barras ao invés de uma, como já foi dito.
Qual linguagem você usa? Algumas têm funções próprias pra "dar um escape" na string automaticamente (ou você pode usar um replace básico, tipo str = replace(str, "\", "\\")). Se você não está tratando isso, então está sujeito à SQL Injection. Atenciosamente, -- Matheus de Oliveira
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral