Mises à jour et installation des tables

Lorsque SPIP s’installe, il utilise des fonctions pour installer ou mettre à jour ses tables. Les plugins peuvent aussi utiliser ces fonctions dans leur fichier d’installation.

Ces fonctions sont déclarées dans le fichier ecrire/base/create.php

Créer les tables

La fonction creer_base($connect='') crée les tables manquantes dans la base de données dont le fichier de connexion est donné par $connect. Par défaut, la connexion principale.

Cette fonction crée les tables manquantes (il faut évidemment qu’elles aient été déclarées), mais ne va rien modifier sur une table existante. Si la table est déclarée en tant que table principale (et non auxiliaire), et si la clé primaire est un entier, alors SPIP affectera automatiquement un type ’auto-increment’ à cette clé primaire.

Mettre à jour les tables

La fonction maj_tables($tables, $connect='') met à jour des tables existantes. Elle ne fera que créer les champs manquants ; aucune suppression de champ ne sera effectuée. Il faut indiquer le nom de la table (chaîne) ou des tables (tableau) à la fonction. Là encore, on peut indiquer un fichier de connexion différent de la base principale.

Si une table à mettre à jour n’existe pas, elle sera créée, suivant le même principe que creer_base() pour l’auto-increment.

Exemples :

include_spip('base/create');
creer_base();
maj_tables('spip_rubriques');
maj_tables(array('spip_rubriques','spip_articles'));

Auteur Matthieu Marcillaud Publié le : Mis à jour : 12/05/17

Traductions : English, français