Veamos primero la sentencia CREATE TABLE. Esta sentencia permite crear una nueva tabla, definiendo su nombre y las columnas que tendrá. Como es natural, inicialmente no tendrá ninguna fila, es decir, estará vacía. Para crear la tabla de autores, usaremos
CREATE TABLE autores (autor_id SERIAL NOT NULL PRIMARY KEY, institucion_id INTEGER NOT NULL, nombre TEXT NOT NULL, nacionalidad TEXT NOT NULL, "fecha de nacimiento" DATE);
Aquí se ilustran varios conceptos. Primero, los saltos de línea no son importantes y pueden omitirse. En PostgreSQL suele terminarse una sentencia SQL con un punto y coma (;). Segundo, las columnas de la tabla que se está definiendo deben ir luego del nombre de ésta, entre paréntesis, separadas por comas.
Tercero,
después del nombre
de cada columna
hemos puesto su dominio.
El dominio de una columna,
para los efectos de este artículo,
será simplemente su tipo de dato:
en este caso, INTEGER, TEXT o DATE
(representando cada uno de ellos
un número entero,
un texto libre
o una fecha, respectivamente).
A la columna autor_id
le hemos dado el pseudo-dominio
SERIAL
,
el cual indica que pertenecerá
al dominio de INTEGER
y se le dará a cada nuevo elemento
que ingresemos un valor creciente.
Siguiendo al dominio
puede ir una lista
de restricciones
que se le aplican
a la columna.
En este caso,
hemos puesto restricciones
NOT NULL a las cuatro primeras columnas,
indicando que corresponden
a atributos obligatorios.
Además,
le hemos dado la restricción
PRIMARY KEY
a la columna autor_id
,
que indica que este atributo
será la llave primaria.
Esto implica automáticamente
dos cosas: que los valores
de este atributo no pueden repetirse
en esta tabla,
y que son obligatorios
(es decir, no era necesario
declarar el NOT NULL separadamente,
pues está implícito).
Finalmente, sobre los nombres de las tablas y columnas: observe que hemos escrito todos ellos con minúsculas. El sistema no preserva mayusculización, y se convierten todos los nombres a minúsculas, a menos que se encierren entre comillas dobles. Es decir, una hipotética tabla AUTORES se llamaría en realidad autores, pero si usáramos ``AUTORES'' se conservaría ese nombre sin alterar. Además, si queremos tener espacios en blanco en los nombres, es preciso encerrarlos entre comillas. Observe que si crea una tabla o columna cuyo nombre tiene alguna letra mayúscula, deberá encerrarlo en comillas dobles cada vez que quiera usarlo.