[firebase-br] RES: Cantu - Mudar formato do campo data nobancointeiro

Eduardo Jedliczka (TeamFB) jedyfb em gmail.com
Qua Ago 2 12:45:26 -03 2006


Em dialect 1 o campo DATE é igual à TIMESTAMP.

Ou seja, não existia campos separados para data e hora, por isto dá para 
inserir normalmente a data e hora. Só dá para mudar isto, trocando o dialect 
da sua base.

Sucesso,

Eduardo Jedliczka
Membro do TeamFB

----- Original Message ----- 
From: "Levi Ribeiro de Freitas" <levi.ribeiro em bol.com.br>
To: "'Carlos H. Cantu'" <listas em warmboot.com.br>; "'FireBase'" 
<lista em firebase.com.br>
Sent: Wednesday, August 02, 2006 12:14 PM
Subject: [firebase-br] RES: Cantu - Mudar formato do campo data 
nobancointeiro


Cantu,

Não é possível!
Veja um select feito num banco firebird com dialeto 3. Usei o Ibexpert.
INSERT INTO METAS (DATA) VALUES ('2006-03-01');
INSERT INTO METAS (DATA) VALUES ('2006-03-03');
INSERT INTO METAS (DATA) VALUES ('2006-03-04');
INSERT INTO METAS (DATA) VALUES ('2006-03-05');
INSERT INTO METAS (DATA) VALUES ('2006-03-06');
INSERT INTO METAS (DATA) VALUES ('2006-03-07');
INSERT INTO METAS (DATA) VALUES ('2006-03-08');
INSERT INTO METAS (DATA) VALUES ('2006-03-10');
INSERT INTO METAS (DATA) VALUES ('2006-03-11');
INSERT INTO METAS (DATA) VALUES ('2006-03-12');
INSERT INTO METAS (DATA) VALUES ('2006-03-13');
INSERT INTO METAS (DATA) VALUES ('2006-03-17');
INSERT INTO METAS (DATA) VALUES ('2006-03-18');
INSERT INTO METAS (DATA) VALUES ('2006-03-19');
INSERT INTO METAS (DATA) VALUES ('2006-03-20');
INSERT INTO METAS (DATA) VALUES ('2006-03-21');
INSERT INTO METAS (DATA) VALUES ('2006-03-22');
INSERT INTO METAS (DATA) VALUES ('2006-03-24');
INSERT INTO METAS (DATA) VALUES ('2006-03-25');
INSERT INTO METAS (DATA) VALUES ('2006-03-26');
INSERT INTO METAS (DATA) VALUES ('2006-03-27');
INSERT INTO METAS (DATA) VALUES ('2006-03-28');
INSERT INTO METAS (DATA) VALUES ('2006-03-29');
INSERT INTO METAS (DATA) VALUES ('2006-03-30');
INSERT INTO METAS (DATA) VALUES ('2006-04-01');
CREATE TABLE METAS (
    META_ID       SMALLINT NOT NULL,
    DATA          DATE NOT NULL,
    QTDE          D_QTDE /* D_QTDE = NUMERIC(9,2) DEFAULT 0.00 */,
    VALOR         D_MONEY32 /* D_MONEY32 = NUMERIC(9,2) DEFAULT 0 CHECK
(VALUE >= 0) */,
    TRANSACTTIME  D_TRANSACT /* D_TRANSACT = TIMESTAMP DEFAULT
CURRENT_TIMESTAMP NOT NULL */,
    USERID        SMALLINT
);
Neste caso o tipo do campo é DATE.


Veja agora um select no meu banco problemático, que tem dialeto 1. Usei o
Ibexpert.
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-18 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-18 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-18 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-18 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-18 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-18 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-18 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-18 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-16 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-16 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-16 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-16 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-16 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-16 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-16 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-16 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-16 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-16 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-16 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-19 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-19 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-19 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-19 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-19 00:00:00');
INSERT INTO TBAGENDA (DATA) VALUES ('2006-03-13 00:00:00');
Neste caso o tipo do campo é DATE.

Como pode ser possível isso?

Se eu navegar pelos registros diretamenta na tabela do meu banco, consigo
digitar a data e a hora normalmente, embora o formato do campo seja DATE.
Veja a extrutura da tabela:
CREATE GENERATOR TBAGENDA_ID_GEN;

CREATE TABLE TBAGENDA (
    ID                INTEGER NOT NULL,
    ID_EMPRESA        INTEGER NOT NULL,
    ID_MANUTOS        INTEGER,
    SITUACAO          INTEGER NOT NULL,
    ID_AREA           INTEGER NOT NULL,
    ID_EQUIPAMENTO    INTEGER NOT NULL,
    ID_SUBCONJUNTO    INTEGER NOT NULL,
    ID_ITEM           INTEGER NOT NULL,
    ID_MANUT          INTEGER NOT NULL,
    ID_TIPOMANUT      INTEGER NOT NULL,
    ID_ATIVIDADE      INTEGER NOT NULL,
    DATA              DATE NOT NULL,
    ID_ESPECIALIDADE  INTEGER NOT NULL,
    DESC_MANUT        VARCHAR(50) NOT NULL COLLATE PXW_INTL850,
    USUARIO           VARCHAR(20) NOT NULL COLLATE PXW_INTL850,
    DT_CAD            DATE NOT NULL,
    PARADA            VARCHAR(5),
    HORA_EXE          VARCHAR(5),
    DT_EXE            DATE,
    ID_EXECUTANTE     INTEGER,
    TEMPO_GASTO       VARCHAR(5),
    OBS_EXECUCAO      VARCHAR(150) COLLATE PXW_INTL850
);

O que devo fazer para corrigir este problema?

Obrigado.

Levi


-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Carlos H. Cantu (TeamFB)
Enviada em: terça-feira, 1 de agosto de 2006 18:55
Para: FireBase
Assunto: Re: [firebase-br] Cantu - Mudar formato do campo data no
bancointeiro

O Firebird armazena as datas sempre usando um formato padrão. Seu problema
está na aplicação que está recuperando e mostrando a data, e não no
Firebird.

[]s
Cantu (Membro do TeamFB - FireBase)
http://www.warmboot.com.br
FireBase - http://www.FireBase.com.br

LRdF> Cantu,

LRdF> O campo Date do meu banco firebird está no seguinte formato:
LRdF> "dd/mm/yyyy hh:mm:ss".

LRdF> Quero mudar para o formato correto para Date "dd/mm/yyyy".

LRdF> Na verdade isto pode ter ocorrido porque este banco anteriormente
LRdF> era um banco Interbase 6.0.

LRdF> Já fiz backup e restore, mas não adianta. O formato Date está
LRdF> igual ao TimeStamp.

LRdF> Como faço para mudar o Date para "dd/mm/yyyy". Devo conseguir
LRdF> mudando direto nas tabelas de sistema, mas nao sei por onde começar a
procurar.

LRdF> Cantu, dá uma ajuda por favor.

LRdF> Obrigado.

LRdF> Levi Ribeiro



______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br Para
editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa



______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço 
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa 





Mais detalhes sobre a lista de discussão lista