PostgreSQLLa base de données la plus sophistiquée au monde.

51.2. Commandes BKI

create [bootstrap] [shared_relation] [without_oids] tablename tableoid (name1 = type1 [, name2 = type2, ...])

Crée une table nommée nomtable, et avoir l'OID tableoid, avec les colonnes données entre parenthèses.

Les types de colonnes suivants sont supportés directement par bootstrap.c: bool, bytea, char (1 byte), name, int2, int4, regproc, regclass, regtype, text, oid, tid, xid, cid, int2vector, oidvector, _int4 (array), _text (array), _oid (array), _char (array), _aclitem (array). Bien qu'il soit possible de créer des tables contenant des colonnes d'autres types, ceci ne peut pas être fait tant que pg_type n'est pas créé et rempli avec les entrées appropriées. (Ceci signifie réellement que seuls ces types de colonnes peuvent être utilisés dans les tables utilisant le « bootstrap » mais que les catalogues ne l'utilisant pas peuvent contenir tout type interne.)

Quand bootstrap est spécifié, la table sera seulement construite sur disque ; rien n'est saisi dans pg_class, pg_attribute, etc, pour elle. Du coup, la table ne sera pas accessible par des opérations SQL standards jusqu'à ce que de nouvelles entrées sont réalisées (avec des commandes insert). Cette option est utilisée pour créer pg_class, etc.

La table est créée comme partagée si shared_relation est spécifié. Elle aura des OID sauf si without_oids est spécifié.

open nomtable

Ouvre la table nommée nomtable pour des ajouts de données. Toute table actuellement ouverte est fermée.

close [nomtable]

Ferme la table ouverte appelée nomtable. Le nom de la table peut-être indiqué pour une vérification croisée mais ce n'est pas nécessaire.

insert [OID = valeur_oid] (valeur1 valeur2 ...)

Insère une nouvelle ligne dans la table ouverte en utilisant valeur1, valeur2, etc., comme valeurs de ses colonnes et valeur_oid pour son OID. Si valeur_oid vaut zéro (0) ou si la clause est omise, et que la table a des OID, alors le prochain OID disponible est utilisé.

Les valeurs NULL peuvent être indiquées en utilisant le mot clé spécial _null_. Les valeurs contenant des espaces doivent être entre des guillemets doubles.

declare [unique] index nomindex oidindex on nomtable using nomam ( classeop1 nom1 [, ...] )

Crée un index nommé nomindex, ayant l'OID indexoid, sur la table nommée nomtable en utilisant la méthode d'accès nommée nomam. Les champs de l'index sont appelés nom1, nom2 etc., et les classes d'opérateur à utiliser sont respectivement classeop1, classeop2 etc. Le fichier index est créé et les entrées du catalogue appropriées sont ajoutées pour lui, mais le contenu de l'index n'est pas initialisé par cette commande.

build indices

Remplit les index précédemment déclarés.