La fonction sql_create() permet de créer une table SQL selon le schéma indiqué.
Elle accepte 7 paramètres :
-
$nomest le nom de la table à créer -
$champsest un tableau de description des colonnes -
$clefsest un tableau de description des clefs -
$autoinc: si un champ est clef primaire est numérique alors la propriété d’autoincrémentation sera ajoutée.falsepar défaut. -
$temporary: est-ce une table temporaire ? par défaut :false -
$serveur, -
$option
Elle s’utilise comme ceci :
sql_create("spip_tables",
array(
"id_table" => "bigint(20) NOT NULL default '0'",
"colonne1"=> "varchar(3) NOT NULL default 'oui'",
"colonne2"=> "text NOT NULL default ''"
),
array(
'PRIMARY KEY' => "id_table",
'KEY colonne1' => "colonne1"
)
);
En règle général, pour un plugin, il vaut mieux déclarer la table SQL un utilisant les pipelines adéquats declarer_tables_principales et declarer_tables_auxiliaires, et utiliser les fonctions creer_base() ou maj_tables('spip_tables') lors de l’installation du plugin, qui appelleront si besoin sql_create(). Lire à ce titre le passage « Mises à jour et installation des tables ».