GARANTIR DESCONTO

Fórum Default Character Set no Interbase 6 #44039

06/05/2004

0

Antes de mais nada, sou novata e desculpem pela ignorãncia mas já pesquisei e não consegui ainda descobrir qual é o melhor ´character set´ para se usar com o interbase 6. Eu estava usando ASCII mas ele não aceita acentos :( .
Alguém saberia me dizer se o ISO8859_1 é melhor? Se eu for migrar minha aplicação para o Linux, tem algum character mais especifico, ou devo deixar none?
Thanks


Divi_naty

Divi_naty

Responder

Posts

06/05/2004

Maicongabriel

Os CharSet´s para a lingua portuguesa são WIN1252 e ISO8859_1. Utilize o qual achar mais adequado. Tanto para Windows quanto para Linux.
Não confundo também o ´WIN´ de WIN1252 com Windows, pois nada tem a ver!
Sempre defina um CharSet e evite utilizar ´NONE´.
Espero ter lhe ajudado! :wink:


Responder

Gostei + 0

28/06/2006

Jeancarissimi

Os Charset´s WIN1252 e ISO8859_1 não permite que se insira acento no nos campos do Banco de Dados.

Se o conselho é setar um char default para os campos texto do banco de dados, qual seria o melhor charset para Interbase 6.0 que aceite acentos?


Responder

Gostei + 0

28/06/2006

Cabelo

Aceita acentos sim...

eu utilizo o WIN1252...

mas tem que usar um collate adequado..

eu utilizo o collate PXW_INTL850...

e funciona muito bem..


Responder

Gostei + 0

28/06/2006

Gandalf.nho

Claro que aceitam os acentos, mas não esqueça que vc tb deve passar o CHARACTER SET na hora de conectar com o banco e não só na sua criação.


Responder

Gostei + 0

28/06/2006

Jeancarissimi

Pois então estou com problemas...

criei o Banco utilizando o ISQL .. do IBConsole

testei com os Dialects 1 e 3 o character set WIN1252 e continua não aceitando acentos. quando vou gravar no banco um campo texto com acento... aparece a seguinte mesagem:

´arthmetic exception, numeric overflow, or string truncation
Cannot transliterate character beetwen characters set´.

tentei usar o Collate PXW_INTL850, porém continua dando o erro.

utilizo Interbase 6.0, com Delphi4 ou 7.

criei o banco da seguinte forma:
Create DataBase ´C:\BD1252.gdb´
User ´SYSDBA´
Password ´masterkey´
PAGE_SIZE = 2048
Default Character Set WIN1252;

e minha tabela sequencia onde testo os acentos está abaixo:

CREATE TABLE SEQUENCIA
(
TABELAVARCHAR(25) CHARACTER SET WIN1252 NOT NULL COLLATE PXW_INTL850,
COD_SEQUENCIANUMERIC(6, 0),
INCREMENTONUMERIC(3, 0),
CONSTRAINT PK_SEQUENCIA PRIMARY KEY (TABELA)
);

como setar o charset antes de conectar com o Banco??

onde esta meu erro?


Responder

Gostei + 0

29/06/2006

Gandalf.nho

Quando vc registra o banco no IBConsole (e em outras ferramentas similares) tem um lugar para setar o CHARACTER SET da conexão. Quando vc acessa o banco via componentes, esses tb dispõem de um parâmetro de conexão para o CHARACTER SET.


Responder

Gostei + 0

29/06/2006

Jeancarissimi

Valeu pessoal...

Consegui fazer funcionar certinho os acentos. No IBConsole, embora tenha setado o banco com Character Set WIN1252, cada vez que conecto devo fazer através do Connect As..., e definir o charset da conexão. Ae sim posso adicionar acentos. No caso do acesso com sistema Delphi, meu problema foi solucionado no proprio BDE, através da propriedade LANGDRIVER, definindo a mesma com o valor Borland PTG Latin-1. Ae Funciona blzinha. Agradeço muito a vocês.

Agora tenho mais um pequeno ou grande problema. Tenho uns bancos já povoados com charset NONE. Existe alguma forma de alterar o charset de um banco de dados ja povoado de NONE para WIN1252???


Responder

Gostei + 0

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

Aceitar