2.3. Créer une nouvelle table
Vous pouvez créer une nouvelle table en spécifiant le nom de la
table, suivi de tous les noms des colonnes et de leur type :
CREATE TABLE temps (
ville varchar(80),
t_basse int, -- température basse
t_haute int, -- température haute
prcp real, -- précipitation
date date
);
Vous pouvez saisir cela dans
psql
avec les sauts de lignes.
psql
reconnaîtra que la
commande n'est pas terminée jusqu'à ce qu'il arrive au point-virgule.
Les espaces blancs (c'est-à-dire les espaces, les tabulations et les
nouvelles lignes) peuvent être librement utilisés dans les commandes
SQL. Cela signifie que vous pouvez saisir la commande ci-dessus
alignée différemment ou même sur une seule ligne. Deux tirets
(«
--
») introduisent des commentaires. Ce
qui les suit est ignoré jusqu'à la fin de la ligne. SQL est
insensible à la casse pour les mots-clé et les identifiants excepté
quand les identifiants sont entre double guillemets pour préserver
leur casse (non fait ci-dessus).
varchar(80) spécifie un type de données
pouvant contenir une chaîne de caractères arbitraires de 80
caractères au maximum. int est le type
entier normal. real est un type pour les
nombres décimaux en simple précision. date
devrait s'expliquer de lui-même (oui, la colonne de type date est aussi nommée date ;
cela peut être commode ou porter à confusion, à vous de choisir).
PostgreSQL™ prend en charge
les types SQL standards
int, smallint,
real, double
precision, char(
N
), varchar(
N
),
date, time,
timestamp et interval ainsi que d'autres types d'utilité générale et
un riche ensemble de types géométriques. PostgreSQL™ peut être personnalisé avec un
nombre arbitraire de types de données définis par l'utilisateur. En
conséquence, les noms des types ne sont pas des mots-clé syntaxiques
sauf lorsqu'il est requis de supporter des cas particuliers dans la
norme SQL.
Le second exemple stockera des villes et leur emplacement
géographique associé :
CREATE TABLE villes (
nom varchar(80),
emplacement point
);
Le type point est un exemple d'un type de
données spécifique à PostgreSQL™.
Pour finir, vous devez savoir que si vous n'avez plus besoin d'une
table ou que vous voulez la recréer différemment, vous pouvez la
supprimer en utilisant la commande suivante :
DROP TABLE nom_table;