Pesquisa parametrizada com campo CHAR no DbExpress

12/08/2004

0

O que devo fazer para que uma simples consulta parametrizada utilizando o Dbexpress(SQLQuery e cia) funcione corretamente:

EX: SELECT * FROM cliente WHERE nome=:nome

Quando o parâmetro é passado somente com o nome, a pesquisa não retorna nenhum valor, mas quando completa-se o nome com caracteres em branco a pesquisa funciona.

O que fazer?


Miranilton

Miranilton

Responder

Posts

12/08/2004

Rpelisson

Que banco você está utilizando?
Aqui estou com vários problemas utilizando o DBExpress acessando SQL 2000, tanto para dar insert, quanto para fazer consultas com parâmetros ocorre este tipo de erro.

Este erro acontece porque o DBExpress ao enviar as linhas de SQL para consultar ou para inserir utilizando parametros, ele perde o fechamento da string dos dados, ou seja ao invés dele enviar um comando completo dessa forma:
declare @P1 int
set @P1=1
exec sp_prepexec @P1 output, N´@P1 char(40)´, N´select * from etc_vendedor
where nome=@P1
´, ´ADMINISTRADOR´


ele envia assim:
declare @P1 int
set @P1=1
exec sp_prepexec @P1 output, N´@P1 char(40)´, N´select * from etc_vendedor
where nome=@P1
´, ´ADMINISTRADOR


Falta fechar a string do comando, sendo assim o SQL se perde completamente.

Engraçado que só acontece no SQL.. testei em MySQL e funcionou normalmente.[/code]


Responder

12/08/2004

Miranilton

Eu estou utilizando também o SQLServer 2000, deve ter alguma atualização do Delphi para corrigir este problema.... não é possível que uma simples consulta parametrizada gere este problema.


Responder

12/08/2004

Rpelisson

Você está utilizando o delphi 7 com dbexpress e sql 2000 tb?

chegou a fazer algum update no delphi?
mesmo porque meu sql está atualizadinho, tudo certinho.

Achei estranho também...


Responder

12/08/2004

Miranilton

Eu tb estou utilizando SQL2000 e Delphi7.

Vou tentar pegar as atualizações disponíveis para o Delphi7 e ver se isso para de acontecer.


Responder

12/08/2004

Rpelisson

Se encontrar alguma coisa de atualização dá um toque, tô com esse problema aqui há meses

Parei com o processo de migração de BDE para dbexpress justamente por causa desses problemas...

O seu está dando erro também ou funciona normalmente?


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