Olá Ravelli, --- Em delphi-br@yahoogrupos.com.br, "Ricardo Ravelli" <ricardorave...@...> escreveu > > Oi Silvio, boa tarde. > > Eu fiz alguns testes aqui e percebi que o problema n o D2010 e o Zeos 7 está > no SQL escrito com passagem de parâmetros. Por exemplo: > > ZCTransporte.HostName := '127.0.0.1'; > ZCTransporte.Connected := True; > ZQUsuarioRO.Close; > ZQUsuarioRO.SQL.Clear; > ZQUsuarioRO.SQL.Text := ('SELECT * FROM cadusuario ' + > 'WHERE login = :pLogin AND senha = :pSenha AND exclusao IS NULL'); > ZQUsuarioRO.ParamByName('pLogin').Value := 'administrador'; > ZQUsuarioRO.ParamByName('pSenha').Value := 'exemplo'; > ZQUsuarioRO.Open; > Dessa maneira ele apresenta o seguinte erro: > "SQL Error: You have na error in your SQL syntax; check the manual that > corresponds to your MySQL server version form the rights syntax to use near > `AND senha = AND exclusao IS NULL' at line 1" > > Se eu não utilizar parametros funciona normalmente, conforme ex abaixo: > > ZCTransporte.HostName := '127.0.0.1'; > > ZCTransporte.Connected := True; > > ZQUsuarioRO.Close; > > ZQUsuarioRO.SQL.Clear; > > ZQUsuarioRO.SQL.Text := ('SELECT * FROM cadusuario WHERE login = > "administrador"'); > > ZQUsuarioRO.Open;
Estranho... Eu fiz um teste aqui com o Lazarus (quando dá pau no Zeos+Delphi, tb dá no Zeos+Lazarus) e passou, saca a imagem: [http://imagebin.org/79479]; Mas eu uso uma cópia (no Lazarus) com todas as Units convertidas para UTF-8, quando uso no Delphi7 uso outra cópia, com todos os arquivos em CP1252 (não sei no D2010, acredito que seja tudo em UTF-8 também). Também te mostro como criei a tabela... Eu passei o Zeos 7 aqui numa ferramenta do Lazarus e vi que ainda tem Unit em UTF-8 e ISO-8859-1 (misturadas); Um dia desses falei com o Mark que quando misturamos UTF com CP e com ISO, aqui no Brasil (e Espanha) dá pau no Zeos! Acentuação gráfica pira e números decimais são multiplicados :) Saca a estrutura e dados da tabela de teste aqui - [http://pastebin.com/m15b44aa7]; > O mais estranho é que esse código com parâmetros eu extrai de um sistema meu > no Delphi 7, MySQL e Zeos (6.6.6) e funciona perfeitamente, somente no D2010 > com MySQL (mesma versão 5.1) e Zeos 7, apresenta esse problema. Você sabe > se houve alguma alteração no D2010 nesse quisito? Não vi, pelo menos no changelog. > Tem alguma outra maneira de reescrever esse código que ele funcione no > D2010? Hum... Estou sem o D2010 aqui, mas veja as dicas acima e a dos outros colegas, qualquer coisa postamos no fórum do Zeos. > Obrigado. > > Abraço. > > Att. > > Ricardo Ravelli. ps. Demorei fazendo testes aqui e nada, qualquer coisa envia algo (um exemplo simples) aí, é capaz de dar erro no D7 aqui. -- Silvio Clecio -- Contato - silvioprog@<yahoo/gmail> Blog estilo mural - silvioclecio.blogspot.com Twitter - twitter.com/silvioprog -- programmer ObjectPascal - silvioprog.blogspot.com -- "Duas coisas instruem o homem, qualquer que seja a sua natureza: o instinto e a experiência. Blaise Pascal.