GARANTIR DESCONTO

Fórum Qual Charset para acentuado com Firebird #51253

07/06/2005

0

Olá amigos, qual charset devo utilizar para aceitar caracteres acentuados.
Estou usando WIN1252 e pelo IBExpert, consigo incluir com acento sem problema, mas dentro do meu sistema, sempre dá erro. Crio o bd pelo ibexpert e informo o charset WIN1252 e ao criar as tabelas faço assim:

set sql dialect 3;

set names WIN1252;

create table Historicos (
    codemp         integer              not null ,
    datainc        date                ,
    horainc        time                ,
    dataalt        date                ,
    horaalt        time                ,
    codhis         integer              not null ,
    nomhis         varchar(50)         ,
constraint IP_Historicos primary key (codemp,codhis));


Há mais algo a configurar? No SQLConnection não há propriedade pra alterar?

Uma outra dúvida: No SqlConnection, na propriedade DriverName sempre ficará Interbase? Se não como alterar?

Obrigado pelo atenção

Mario


Aldus

Aldus

Responder

Posts

07/06/2005

Sandra

aldus,

Leia este [url=http://www.firebase.com.br/cgi-bin/firebase.cgi/dica?ID=1]artigo[/url] do FireBase.


[b:a6ffb3c9cf]Obs.:[/b:a6ffb3c9cf] Movido do fórum Banco de Dados.


Responder

Gostei + 0

07/06/2005

Bruno Belchior

o seu problema está no collate utilizado nos campos varchar e char, procure por collate no fórum e irá achar o que preciza...


Responder

Gostei + 0

08/06/2005

Isabelct

Há mais algo a configurar? No SQLConnection não há propriedade pra alterar?

Não utilizo DBExpress, mas no componente de conexão você precisa informar qual o CharSet que será usado para aquela conexão. Acredito que a propriedade em questão seja a ´ServerCharSet´, então nela você preencheria o seu CharSet, no caso, WIN1252.

Uma outra dúvida: No SqlConnection, na propriedade DriverName sempre ficará Interbase? Se não como alterar?

Até o momento, o driver do Interbase funciona bem tanto para Interbase quanto para Firebird. Nas versões futuras do Firebird, é provável que esta compatibilidade deixe de existir, mas por enquanto não há problemas.


Responder

Gostei + 0

08/06/2005

Aldus

Amigos, tentei criei a tabela como abaixo, e continua ocorrendo o mesmo erro na acentuação, tenho que mencionar na conexão o charset ou alterar alguma outra propriedade? Uso sqlconnection

SET SQL DIALECT 3;
SET NAMES WIN1252;

CREATE TABLE BAIRROS (
    CODEMP   INTEGER NOT NULL,
    DATAINC  DATE,
    HORAINC  TIME,
    DATAALT  DATE,
    HORAALT  TIME,
    CODBAI   INTEGER NOT NULL,
    NOMBAI   VARCHAR(50) COLLATE PXW_INTL850
);



Responder

Gostei + 0

08/06/2005

Gandalf.nho

Como o pessoal falou acima, vc deve informar o CHARACTER SET na conexão.


Responder

Gostei + 0

09/06/2005

Isabelct

Amigos, tentei criei a tabela como abaixo, e continua ocorrendo o mesmo erro na acentuação, tenho que mencionar na conexão o charset ou alterar alguma outra propriedade? Uso sqlconnection

Você precisa especificar o CharSet e o Collate na criação da tabela.

SET SQL DIALECT 3;
SET NAMES WIN1252;

CREATE TABLE BAIRROS (
    CODEMP   INTEGER NOT NULL,
    DATAINC  DATE,
    HORAINC  TIME,
    DATAALT  DATE,
    HORAALT  TIME,
    CODBAI   INTEGER NOT NULL,
    NOMBAI   VARCHAR(50) CHARACTER SET WIN1252 COLLATE PXW_INTL850
);


E no componente SQL Connection você precisa especificar qual o CharSet que será utilizado na conexão.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar