06.09.2014 Views

Bases de datos: Software libre - Universitat Oberta de Catalunya

Bases de datos: Software libre - Universitat Oberta de Catalunya

Bases de datos: Software libre - Universitat Oberta de Catalunya

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

© FUOC • 71Z799014MO 48 <strong>Bases</strong> <strong>de</strong> <strong>datos</strong> en PostgreSQL<br />

4.7.6. Fechas y horas<br />

En la siguiente tabla se muestran los tipos <strong>de</strong> <strong>datos</strong> referentes al tiempo que<br />

ofrece PostgreSQL:<br />

Tipo <strong>de</strong> dato Unida<strong>de</strong>s Tamaño Descripción Precisión<br />

date día-mes-año 4 bytes Fecha Día<br />

time hrs:min:seg:micro 4 bytes Hora Microsegundo<br />

timestamp<br />

día-mes-año<br />

hrs:min:seg:micro<br />

8 bytes Fecha más hora Microsegundo<br />

interval<br />

second, minute, hour, day,<br />

week, month, year, <strong>de</strong>ca<strong>de</strong>,<br />

century, millennium*<br />

12 bytes<br />

Intervalo<br />

<strong>de</strong> tiempo<br />

Microsegundo<br />

* También admite abreviaturas.<br />

Existe un tipo <strong>de</strong> dato timez que incluye los <strong>datos</strong> <strong>de</strong>l tipo time y, a<strong>de</strong>más, la zona horaria.<br />

Su sintaxis es la siguiente:<br />

hh:mm[:ss[.mmm]][am|pm][zzz]<br />

El tipo <strong>de</strong> <strong>datos</strong> date almacena el día, mes y año <strong>de</strong> una fecha dada y se muestra<br />

por omisión con el formato siguiente: YYYY-MM-DD:<br />

<strong>de</strong>mo=# create table Persona ( nacimiento date );<br />

CREATE<br />

<strong>de</strong>mo=# insert into persona values ( ‘2004-05-22’ );<br />

INSERT 17397 1<br />

<strong>de</strong>mo=# select * from persona;<br />

nacimiento<br />

------------<br />

2004-05-22<br />

(1 row)<br />

Para cambiar el formato <strong>de</strong> presentación, <strong>de</strong>bemos modificar la variable <strong>de</strong> entorno<br />

datestyle:<br />

<strong>de</strong>mo=# set datestyle = ‘german’;<br />

SET VARIABLE<br />

<strong>de</strong>mo=# select * from persona;<br />

nacimiento<br />

------------<br />

22.05.2004<br />

(1 row)<br />

Nombre<br />

<strong>de</strong>l Formato Ejemplo<br />

formato<br />

ISO Año-mes-día 2004-05-22<br />

GERMAN Día.mes.año 22.05.2004<br />

POSTGRES día-mes-año 22-05-2004<br />

SQL mes/día/año 05/22/2004<br />

4.7.7. Arrays<br />

El tipo <strong>de</strong> <strong>datos</strong> array es una <strong>de</strong> las características especiales <strong>de</strong> PostgreSQL,<br />

permite el almacenamiento <strong>de</strong> más <strong>de</strong> un valor <strong>de</strong>l mismo tipo en la misma<br />

columna.<br />

Definición<br />

Los arrays no cumplen la primera<br />

forma normal <strong>de</strong> Cood,<br />

por lo que muchos los consi<strong>de</strong>ran<br />

inaceptables en el mo<strong>de</strong>lo<br />

relacional.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!