Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-01-2017
Avatar de bulc
bulc bulc is offline
Miembro
 
Registrado: jun 2010
Posts: 415
Poder: 14
bulc Va por buen camino
Cómo guardar el símbolo del euro (€)

Hola.
Tengo una base de datos definida como: DEFAULT CHARACTER SET = ISO8859_1 y COLLATION ES_ES. y en ella una tabla con un campo VARCHAR en la que guardo precios de dos enteros y dos decimales.
Quiero que guarde el símbolo del euro al final. Una vez colocado €, por ejemplo 20,50€, resulta que Firebird lo guarda como 20,50?.
?Que carácter set debo usar? o lo que es lo mismo, ¿dónde está el error?
He visto un ejempo aquí con el símbolo 'Tic OK' la V con el brazo derecho alargado, pero no lo pillo.
Tampoco sé que combinación Alt+XXX debo usar para obtenerlo.
Saludos.
Responder Con Cita
  #2  
Antiguo 12-01-2017
aposi aposi is offline
Miembro
 
Registrado: dic 2006
Posts: 146
Poder: 18
aposi Va por buen camino
hola, en el ISO-8859-1 no existe el caracte € https://es.wikipedia.org/wiki/ISO/IEC_8859-1
Tendias que passar a ISO-8859-15 https://es.wikipedia.org/wiki/ISO/IEC_8859-15

Por que guardas numeros en un campo VARCHAR?
No seria mas facil guardar como numerico y añadir el € al presentar el numero? (por tema de posibles calculos sobre estos numeros)
Responder Con Cita
  #3  
Antiguo 12-01-2017
Avatar de bulc
bulc bulc is offline
Miembro
 
Registrado: jun 2010
Posts: 415
Poder: 14
bulc Va por buen camino
Por esta razón

Uso un campo Varchar porque se refiere al precio de un sello.
Los sellos pueden estar en Cuartos, Reales, Maravedíes, Pesetas, Euros...
Y para buscar un sello, aparte de su 'nombre' o el texto que lleva el sello se usa el valor facial, entre otros... Ya que todos tienen su valor facial. En cambio muchos no llevan texto ninguno,
salvo el del país emisor.
Ya he valorado otras opciones, pero ésta es casi, casi, la mejor.
De ahí que use un Varchar. Ten en cuenta que yo soy muy rústico en esto de Delphi/Firebird.
Ahora bien, si me sugieres usar otro medio lo probaré. Y esto me da pie para preguntar si puedo añadir un campo Varchar con ese ISO nuevo para pasar los datos al nuevo campo y borrar el viejo. ¿Se puede?
Quedo a la espera de tu comentario y recibe un agradecido saludo por tu ayuda e interés.
bulc

Última edición por bulc fecha: 12-01-2017 a las 17:29:02.
Responder Con Cita
  #4  
Antiguo 12-01-2017
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.038
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por bulc Ver Mensaje
Y esto me da pie para preguntar si puedo añadir un campo Varchar con ese ISO nuevo para pasar los datos al nuevo campo y borrar el viejo. ¿Se puede?
Se puede.
De todas formas, en valor numérico es un valor numérico. Yo tendría dos campos, uno para el valor numérico y otro para la moneda que corresponda.
Código SQL [-]
create table tbSellos (
  ...
  nombre varchar(64),
  valor numeric(12,4) default 0,
  divisa varchar(16) character set UTF8 collate ES_ES_CI_AI,    /* o ISO8859_15 si lo prefieres */
  ...
)
Responder Con Cita
  #5  
Antiguo 12-01-2017
Avatar de bulc
bulc bulc is offline
Miembro
 
Registrado: jun 2010
Posts: 415
Poder: 14
bulc Va por buen camino
Añadiendo...

Gracias Notevi. Tomo nota.
Entiendo tu razonamiento de tener dos campos separados. Lo sopesé en el momento del diseño. Con una letra está la cosa solucionada y a la hora de la búsqueda es más directo.
No es lo mismo buscar en dos campos que en uno. Así para buscar 2 reales. Uso 2,00R, para 3 cuartos, 3,00C, pesetas P, y euros €.
Así 2 pesetas es 2P o 2,00P, etc.
De momento va sin problemas.
Esa es la única razón. De todos modos me pone muy contento ver que siempre dais en el clavo potenciando lo poco que uno sabe.
Un saludo afectuoso.

bulc
Responder Con Cita
  #6  
Antiguo 13-01-2017
Avatar de bulc
bulc bulc is offline
Miembro
 
Registrado: jun 2010
Posts: 415
Poder: 14
bulc Va por buen camino
No he ha funcionado...

He añadido un campo tal como dices:
ALTER TABLE XXX ADD nuevo_campo varchar(7) character set... ect.
el campo aparece correctamente pero al guardar el símbolo del euro los guardar como '?'
Seguiré probando...
Saludos.
bulc
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Cómo puedo poner € símbolos euro en Firebird bulc Firebird e Interbase 2 13-10-2015 15:15:45
¿Pedir un crédito de un Euro? marcoszorrilla Humor 1 22-11-2005 08:31:16
Como introducir un simbolo dentro de un DBGrid? tramjauer Conexión con bases de datos 1 22-09-2005 11:29:17
Como saco un símbolo? craven Varios 5 08-09-2003 22:00:44
interbase-delphi-Tgrid-simbolo del euro Giniromero Conexión con bases de datos 7 12-06-2003 14:58:48


La franja horaria es GMT +2. Ahora son las 22:39:04.


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