Hola amigos foreros.
Tengo una db en firebird 2.5.2. pero tengo un extraño problema...
me está mostrando caracteres extraños. esta es la definición de la base de datos:
Código SQL
[-]SET SQL DIALECT 3;
SET NAMES NONE;
CREATE DATABASE 'localhost:E:\Mis Documentos\RAD Studio\Projects\Comunes\BASE_NO.FDB'
USER 'SYSDBA' PASSWORD 'masterkey'
PAGE_SIZE 16384
DEFAULT CHARACTER SET NONE COLLATION NONE;
esta función tampoco la puedo definir utilizando ñ o tildes
Código SQL
[-]ALTER PROCEDURE EDADCOMPLETA (
FECHA_NACIDO DATE)
RETURNS (
RESULTADO VARCHAR(240) CHARACTER SET ASCII)
AS
declare variable a integer;
declare variable aa integer;
declare variable m integer;
declare variable mm integer;
declare variable d integer;
declare variable dd integer;
declare variable anio integer;
declare variable mes integer;
declare variable dia integer;
begin
a = extract(year from fecha_nacido);
m = extract(month from fecha_nacido);
d = extract(day from fecha_nacido);
aa = extract(year from current_date);
mm = extract(month from current_date);
dd = extract(day from current_date);
anio = aa - a;
if (m <= mm) then
mes = mm - m;
else
begin
mes = mm + 12 - m;
anio = anio - 1;
end
if (d <= dd) then
dia = dd - d;
else
begin
if (mod(aa, 4) = 0) then
dia = dd + 29 - d;
else
dia = dd + 28 - d;
mes = mes - 1;
end
if (mes < 0) then
begin
anio = anio - 1;
mes = mes + 12;
end
if (anio = 1) then
resultado = cast(anio as varchar(4))||' Anio, ';
else
resultado = cast(anio as varchar(4))||' Anios, ';
if (mes = 1) then
resultado = resultado||cast(mes as varchar(2))||' Mes, ';
else
resultado = resultado||cast(mes as varchar(2))||' Meses, ';
if (dia = 1) then
resultado = resultado||cast(dia as varchar(2))||' Dia ';
else
resultado = resultado||cast(dia as varchar(2))||' Dias ';
suspend;
END;
tendría que cambiar a UTF-8 o es algo más quizás estoy haciendo algo malo
Gracias por vuestro tiempo
Gustavo Cruz