Aconteu um erro em meu BD

Firebird

09/09/2004

Olá pessoal...

Me falaram muito bem desse forum, então resolvi q era hora de participar junto com vocês, e como alguns aqui, preciso da ajuda de vocês, para me ajudarem a corrigir um erro q acontece no meu banco de dados.

Uso Interbase 6.0 + Delphi 6 + Windows98.
O dialeto do meu Banco é 3.

Estou tentando colocar (inserir) uns registros no meu banco de dados e ele me retorna o seguinte erro:

arithmetic exception, numeric overflow, or string truncation
cannot trnasliterate character between character sets.
  OK


Alguém aqui sabe me dizer o que he isso?

Conto com vocês.


Andrew

Andrew

Curtidas 0

Respostas

Martins

Martins

09/09/2004

Bem Vindo colega!!!!!

Vamos ver.

[b:d208e49699]Uso Interbase 6.0 + Delphi 6 + Windows98.
O dialeto do meu Banco é 3.
[/b:d208e49699]

Tudo certo...

arithmetic exception, numeric overflow, or string truncation
cannot trnasliterate character between character sets.
OK


Bem, ou estou muito enganado ou vc esta tento inserir em seu banco caracteres acentuados, como nome de cidades, pessoas, etc..., pois bem
vejamos o seguinte, para inserir caracteres acentuados em seu banco, vc deve especificar o character set = iso8859_ e collate = pt_pt, isso nas suas tabelas, pois vai lhe ajudar até na ordenação, principalmente se vc trabalha com indices.

Se vc estiver usando IBDatabse, dê um duplo click nele, e preencha a o campo character set com ISO8859_1, pronto isso deve resolver seu problema.

Qualquer dúvida, estaremos aqui....

Espero ter ajudado.


GOSTEI 0
Gandalf.nho

Gandalf.nho

09/09/2004

Isso só vai funcionar se ele tiver usado esse CHARACTER SET e COLLATE no seu banco. Além disso, eu recomendaria como mais indicado pro português o CHARACTER SET WIN1252 com COLLATE PXW_INTL850.


GOSTEI 0
Maicongabriel

Maicongabriel

09/09/2004

Alem das duas dicas acima, deve-se lembrar que esta mensagem é um tanto quanto genérica e um dos problemas poderia ser[b:6afbe28606]::[/b:6afbe28606] Você esta tentando inserir um conteudo maior em um campo com capacidade menor, ou seja[b:6afbe28606]::[/b:6afbe28606] Tentando inserir o conteudo ´ABCDEFG´ em um VARCHAR(3) por exemplo, ou 12344567643 em um campo SMALLINT por exemplo.
Mas verifique a dica anterior primeiramente, pois é a causa mais comun! :wink:


GOSTEI 0
Andrew

Andrew

09/09/2004

Muito Obrigado pessoal...

Valeu muito mesmo pelas respostas, graças a vocês consegui resolver meu problema, eu estava realmente utilizando caracteres acentuados e a dica do Martinsbios resolveu meu problema, e as demais vieram a somar, para que eu possa ter mais conhecimento dos problemas q ocorrem quando se utiliza um bom SGBD.

Muito obrigado novamente a todos vocês.

Até mais....


GOSTEI 0
POSTAR