Alguém conhece SQL?

Delphi

01/03/2004

update vennota set equipamento= :pequi
where nota= :Pnota and emissao between :data1 and :data2 and estabe = :Pestab

Galera, coloquei este comando numa query, aí quando vou ativá-la me da esta mensagem: ´Type mismatch in expression´.

E aí, será que alguém pode me ajudar?


Vagner Monteiro

Vagner Monteiro

Curtidas 0

Respostas

Cdaraujo

Cdaraujo

01/03/2004

Caro amigo,

O Seu problema é bem simples de ser resolvido. Basta vc prestar atenção nos parâmetros que vc está passando.
É importante que vc saiba o tipo de cada campo. Alguns bancos de dados possuem conversão implícita, mas outros não, então nesse caso é melhor vc garantir o tipo correto de dado, exemplo:
- Se vc tem um campo inteiro, caso vc passe uma string, por mais que seja um número tipo ´1´, poderá apresentar esse tipo de erro. A forma correta para um campo inteiro seria :

Campo do tipo INTEGER

UPDATE TABLE
SET FIELD =:FIELD

ParambyName(´FIELD´).AsInteger := 1;

Campo do tipo VARCHAR

UPDATE TABLE
SET FIELD =:FIELD

ParambyName(´FIELD´).AsString := ´1´;

Isso seria uma forma correta de se passar um parâmetro para o TQuery.

Espero ter ajudado na solução do seu problema!

Daniel Araújo

[quote:3ff0dca573=´Vagner Gulart Monteiro´]update vennota set equipamento= :pequi
where nota= :Pnota and emissao between :data1 and :data2 and estabe = :Pestab

Galera, coloquei este comando numa query, aí quando vou ativá-la me da esta mensagem: ´Type mismatch in expression´.

E aí, será que alguém pode me ajudar?[/quote:3ff0dca573]


GOSTEI 0
POSTAR