Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-10-2015
Avatar de Espartaco
[Espartaco] Espartaco is offline
Miembro Premium
 
Registrado: oct 2005
Posts: 107
Poder: 19
Espartaco Va por buen camino
Problemas con los acentos solo al editar

Hola amigos, pues eso. Soy nuevo en Interbase, pero gracias al tutorial de Jose Luis Garcí del videoclub estoy consiguiendo las cosas. Pero me ha surgido un problema y por mas que busco en el foro no encuentro solucion.
El problema es que usando Interbase en Delphi XE3, cuando doy de alta un registro no tengo problemas con los acentos, me los acepta y los graba ya que he usado ISO8859_1. Pero cuando intento editar el registro, o grabar el mismo sin tocarlo al grabar me da el error
Error: arithmetic exception, numeric overflow, or string truncation

Ya se que este problema es por los acentos, pero porque me admite agregar el registro y sin embargo no me permite editarlo o grabarlo sobre si mismo si algun campo contiene acentos.

Muchas gracias por vuestra atencion y espero vuestra ayuda.
Responder Con Cita
  #2  
Antiguo 22-10-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.042
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Ese error puede ser porque intentes grabar una cadena de texto de mayor longitud que el permitido por el campo.
Responder Con Cita
  #3  
Antiguo 22-10-2015
Avatar de Espartaco
[Espartaco] Espartaco is offline
Miembro Premium
 
Registrado: oct 2005
Posts: 107
Poder: 19
Espartaco Va por buen camino
Gracias Casimiro por la respuesta.

No, no es el caso porque por ejemplo, si edito el registro, aunque sea en IBConsole, y cuando lo creé puse un nombre con acento, y al editarlo no lo toco, cuando quiero grabarlo me da el error.

Por ejemplo:
Al dar de alta:
Nombre-> RAMÓN
Apellidos-> CASTILLO CANTERO

Al Editar:
Nombre-> RAMÓN
Apellidos-> CASTILLO CANTERO

Como ves sin modificar nada. Pues si le digo que lo grabe, me da el error. Increíble.
Espero haberme explicado.
Responder Con Cita
  #4  
Antiguo 26-10-2015
Avatar de Espartaco
[Espartaco] Espartaco is offline
Miembro Premium
 
Registrado: oct 2005
Posts: 107
Poder: 19
Espartaco Va por buen camino
Hola de nuevo, viendo un hilo en el que contesta Casimiro, comenta que él no utiliza nunca el dilaecto 8859_1 ni ninguno y que nunca ha tenido problemas.
Efectivamente he echo lo mismo que él y se me ha solucionado el problama. Lo dejo aqui por si a alguien le ocurre lo mismo que lo pueda solucionar.

Muchas gracias por todo, y un saludo.
Responder Con Cita
  #5  
Antiguo 26-10-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.042
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Efectivamente, no uso ninguno en la base de datos.
Solamente lo uso en algún campo que me interese.
Responder Con Cita
  #6  
Antiguo 26-10-2015
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.911
Poder: 25
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
"No uso ninguno"?

No entiendo, no EXISTE forma de no usar ninguno.... mas bien "uso el que esta por defecto"? No?

Y por lo demas, utf-8 es la opcion mas recomendada.

PD:

El Mínimo Absoluto que Todos los Desarrolladores Deberían Conocer Sobre Unicode y Codificaciones.

PD.2:

Y si no saben cual es el "por defecto", es muy probable que mas tarde tengan problemas, y puede que ni se den por enterado... Pa' rematar hay que sincronizar los encoding en toda la cadena de la app.

PD.3:

Y esto es lo que encontre sobre este error especifico:

https://stackoverflow.com/questions/...-key-specified
__________________
El malabarista.
Responder Con Cita
  #7  
Antiguo 26-10-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.042
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Ninguno
Desde 1998 que uso firebird (al principio interbase) siempre he dejado en blanco ese dato. Aunque sí lo especifico para algún campo en particular que necesito, por ejemplo, ordenar alfabéticamente aunque tenga mayúsculas, minúsculas, acentos, etc.
Pero a la base de datos, no.

Responder Con Cita
  #8  
Antiguo 26-10-2015
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.911
Poder: 25
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Wow!

https://stackoverflow.com/questions/...-character-set

Esta no me la esperaba:

Cita:
Basically it means database must be used in the same language environment it was created on.
Que comportamiento por defecto mas errado! Asi que eso lo define el cliente???

Y no se ve el problema, porque si esa BD es solo accedida por el mismo cliente, pues todo parece ok!

P.D: Osea, que la respuesta es que se almacena en "binario" y es responsabilidad del programador asegurarse de no cambiar su forma de acceder a esta...

P.D.2: Lo de "errado" ya que una BD empresarial no deberia depender del cliente, aunque si es embeida se podria considerar aceptable...
__________________
El malabarista.

Última edición por mamcx fecha: 26-10-2015 a las 21:16:45.
Responder Con Cita
  #9  
Antiguo 26-10-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.042
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Si se crea la BD con un charset determinado, ese es el que hay que usar para acceder a ella.
Si miras sus propiedades puedes ver qué charset se usó para crearla.
No hay ningún problema, nunca ha habido problema.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Editar mayúsculas a solo primera en mayúscula por todos los registros MartinS SQL 4 08-02-2012 23:40:15
Como editar solo un campo de un registro? negrokau Varios 2 18-10-2011 17:29:21
Editar sólo algunos campos de un dbgrip. cesar_gta86 Varios 1 30-11-2007 18:27:51
Problemas con los acentos en IB7.1 EduardRC Firebird e Interbase 0 12-01-2005 18:56:03
problemas de acentos ebeltete Varios 2 04-02-2004 16:58:50


La franja horaria es GMT +2. Ahora son las 07:15:58.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi