--- Emanoel Tadeu <[EMAIL PROTECTED]>
escreveu:

> Pessoal, peguei uns arquivos DBF's e estou
> portandoos campos deles para o postgresql, para
> portar o sistema usado que está meio obsoleto para
> um maior e mais atualizado. Contudo, tenho em um
> desses campos de um DBF um campo que armazenada data
> e hora, estilo timestamp. Mas o mesmo não é
> preenchido em algumas ocasiões.


Qual o significado deste não preenchimento?
- se é desconhecido então você pode utilizar NULL;
- se é algo muito antigo então você pode utilizar
"-infinity";
- se é a data corrente então utilize CURRENT_TIMESTAMP
Depende do significado para seu sistema.
http://www.postgresql.org/docs/8.2/interactive/datatype-datetime.html


> 
> Não posso inserir um valor de aspas vazias num campo
> timestamp: ''
> e quando tento inserir um valor do tipo '0000-00-00
> 00:00:00' ele diz:
> ERROR:  date/time field value out of range:
> "0000-00-00 00:00:00"
> HINT:  Perhaps you need a different "datestyle"
> setting.
> 

Não existe data com dia 00 ou mês 00.
O ano pode variar de 4713 AC a 5874897 DC.


> Como fazer para inserir um valor default nesse
> estilo?


Utilize a cláusula DEFAULT na criação da tabela e o
valor DEFAULT no valor correspondente ao campo no
comando INSERT.

CREATE TABLE foo(
...
sua_data TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
...
);

INSERT INTO foo(..., sua_data,...) 
       VALUES (..., default,...);

[]s
Osvaldo


__________________________________________________
Fale com seus amigos  de graça com o novo Yahoo! Messenger 
http://br.messenger.yahoo.com/ 
_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
Antes de perguntar consulte o manual
http://pgdocptbr.sourceforge.net/

Para editar suas opções ou sair da lista acesse a página da lista em:
http://pgfoundry.org/mailman/listinfo/brasil-usuarios

Responder a