O que há de errado nesta sql?

13/09/2004

Estou tendo problemas com a seguinte instrução sql:

DM.QryDetPreletor.Close;
DM.QryDetPreletor.SQL.Clear;
DM.QryDetPreletor.SQL.Add(´Select * from preletores a, DetPreletor b´);
DM.QryDetPreletor.SQL.Add(´Where a.nome = b.preletor´);            DM.QryDetPreletor.SQL.Add(´And a.nome not in (select preletor from Reuniões where data between ´+ QuotedStr(SDataIni)+´ and ´+QuotedStr(SDataFim)+´)´);
DM.QryDetPreletor.SQL.Add(´order by a.nome´); 


Tá dando o seguinte erro: ´Tipo de dado incompatível na expressão de critério´, alguém sabe me dizer o porque?

Valeu pessoal.

Angelo[/code]


Angelo

Respostas

13/09/2004

Gandalf.nho

Aquele campo data é do tipo Data mesmo? Se for, retire o QuotedStr que só deve ser usado para campos String.


Responder Citar

13/09/2004

Angelo

É data sim, vou tirar e ver no que dá.


Responder Citar

13/09/2004

Rômulo Barros

Caro amigo: Vamos supor q o seu codigo gere a seguinte instruçao sql:

SELECT * FROM PRELETORES A, DETPRELETOR B
WHERE A.NOME = B.PRELETOR
AND A.NOME NOT IN (
                   SELECT PRELETOR
                   FROM REUNIOES
                   WHERE DATA BETWEEN ´01/01/04´
                   AND ´31/01/04´
                  )
ORDER BY A.NOME


Se vc tiver utilizando IB ou FB, sua data tem que está no formato MM/DD/YYYY ... portanto a instrucao acima está errada.


:wink: :wink: :wink: :wink:


Responder Citar