Erro na select por causa de caracteres especiais
Olá estou com um problema.
var
cmd: String;
texto: String;
begin
inherited;
texto:= Edit1.Text;
DMClient.cdsEmpresas.Close;
cmd:= ´SELECT * FROM EMPRESAS´;
cmd:= cmd+ ´ WHERE RAZAO_SOCIAL LIKE ´+#39+´¬´+texto+´¬´+39;
cmd:= cmd+ ´ ORDER BY RAZAO_SOCIAL´;
DMClient.cdsEmpresas.CommandText:= cmd;
DMClient.cdsEmpresas.Open;
se eu procurar por ´Ç´ ou ´Ú´ acentos da o seguinte erro
´Database Server Error:
arithmetic exception, numeric overflow, or string truncation
connot transliterate character between character sets´
no banco esta win1252
e esta select roda bem
SELECT *
FROM EMPRESAS
WHERE RAZAO_SOCIAL
LIKE ´¬Ç¬´
ORDER BY RAZAO_SOCIAL
será q o problema esta no componente ClientDataSet?
Francisco
var
cmd: String;
texto: String;
begin
inherited;
texto:= Edit1.Text;
DMClient.cdsEmpresas.Close;
cmd:= ´SELECT * FROM EMPRESAS´;
cmd:= cmd+ ´ WHERE RAZAO_SOCIAL LIKE ´+#39+´¬´+texto+´¬´+39;
cmd:= cmd+ ´ ORDER BY RAZAO_SOCIAL´;
DMClient.cdsEmpresas.CommandText:= cmd;
DMClient.cdsEmpresas.Open;
se eu procurar por ´Ç´ ou ´Ú´ acentos da o seguinte erro
´Database Server Error:
arithmetic exception, numeric overflow, or string truncation
connot transliterate character between character sets´
no banco esta win1252
e esta select roda bem
SELECT *
FROM EMPRESAS
WHERE RAZAO_SOCIAL
LIKE ´¬Ç¬´
ORDER BY RAZAO_SOCIAL
será q o problema esta no componente ClientDataSet?
Francisco
Nussbaum
Curtidas 0
Respostas
Emerson Nascimento
07/12/2006
ou talvez o problema esteja no componente de conexão... (sqlconnection ou ibdatabase)
GOSTEI 0
Nussbaum
07/12/2006
A questão esta ai, uso o IBExpert e lá a select roda, reconhece os caracteres especiais, mas quando enviado pelo delphi ele não reconhece, ai não sei o q fazer para o delphi reconhecer a mesma coisa q no SGBD.
Estou usando o SQLConnection, dbExpress
Estou usando o SQLConnection, dbExpress
GOSTEI 0
Titanius
07/12/2006
Como o emerson disse, verifique se no componente de conexao voce informou o charset igual ao que voce informou ao criar o banco, senao sempre vai dar este erro mesmo..
[]s
[]s
GOSTEI 0
Nussbaum
07/12/2006
Bom eu alterei a propriedade ServerCharSet para WIN1252, do componente SQLConection, mas ainda da o mesmo erro.
Teria alguma outra propriedade ou ate mesmo uma outra maneira de fazer as selects?
Teria alguma outra propriedade ou ate mesmo uma outra maneira de fazer as selects?
GOSTEI 0
Emerson Nascimento
07/12/2006
mas o WIN1252 está definido no banco ou somente no campo?
GOSTEI 0
Nussbaum
07/12/2006
Sim, WIN1252 está definido no banco.
Mas tem uma coisa, para gravar não ha problemas, gravar normal, o erro dá nas consultas.
Mas tem uma coisa, para gravar não ha problemas, gravar normal, o erro dá nas consultas.
GOSTEI 0