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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

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

La tabla estudiante contendrá un solo registro, pero su i<strong>de</strong>ntificador es el<br />

número 3.<br />

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

id |nombre |direccion |carrera |grupo |grado<br />

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

3 | Elizabeth | Pino 35 | Psicologia | B | 5<br />

(1 row)<br />

Todos los registros <strong>de</strong> persona siguen una misma secuencia sin importar si son<br />

padres o hijos:<br />

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

id |nombre<br />

|direccion<br />

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

1 | Fe<strong>de</strong>rico Garca Lorca | Granada 65<br />

2 | Alejandro Magno | Babilonia<br />

3 | Elizabeth | Pino 35<br />

(3 rows)<br />

La herencia es útil para <strong>de</strong>finir tablas que conceptualmente mantienen elementos<br />

en común, pero también requieren <strong>datos</strong> que los hacen diferentes.<br />

Uno <strong>de</strong> los elementos que conviene <strong>de</strong>finir como comunes son los i<strong>de</strong>ntificadores<br />

<strong>de</strong> registro.<br />

4.4. Restricciones<br />

Como ya sabemos, las restricciones permiten especificar condiciones que <strong>de</strong>berán<br />

cumplir tablas o columnas para mantener la integridad <strong>de</strong> sus <strong>datos</strong>. Algunas<br />

<strong>de</strong> las restricciones vendrán impuestas por el mo<strong>de</strong>lo concreto que se<br />

esté implementando, mientras que otras tendrán su origen en las reglas <strong>de</strong> negocio<br />

<strong>de</strong>l cliente, los valores que pue<strong>de</strong>n tomar algunos campos, etc.<br />

Los valores que pue<strong>de</strong> contener una columna están restringidos en primer<br />

lugar por el tipo <strong>de</strong> <strong>datos</strong>. Ésta no es la única restricción que se pue<strong>de</strong> <strong>de</strong>finir<br />

para los valores en una columna, PostgreSQL ofrece las restricciones siguientes:<br />

Ejemplo<br />

Una columna <strong>de</strong>finida como<br />

integer no pue<strong>de</strong> contener ca<strong>de</strong>nas<br />

<strong>de</strong> caracteres.<br />

• null y not null. En múltiples ocasiones el valor <strong>de</strong> una columna es <strong>de</strong>sconocido,<br />

no es aplicable o no existe. En estos casos, los valores cero, ca<strong>de</strong>na<br />

vacía o falso son ina<strong>de</strong>cuados, por lo que utilizamos null para especificar

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

Saved successfully!

Ooh no, something went wrong!