Manuel:table categorylinks
↑ Manuel:Contenu | Schéma de base de données MédiaWiki | table categorylinks |
Version de MediaWiki : | ≥ 1.3 |
La table categorylinks enregistre les entrées correspondant aux liens de la forme [[Category:Title]]
ou [[Category:Title|sortkey]]
qui, dès qu'ils sont placés n'importe où sur une page, placent cette page dans la catégorie nommée Title (pour laquelle une page associée peu exister ou pas).
Les liens qui commencent par un caractère deux-points tels que [[:Category:Title]]
, ne sont pas rangés dans la table categorylinks
mais sont gérés comme des liens internes classiques (conduisant dans ce cas à la page Category:Title).
Les parties modifiables des pages de catégorie sont enregistrées comme les autres pages.
Il existe quatre index qui nous aident à l'amélioration des performances :
- La concaténation de
cl_from
etcl_to
(pour savoir quand un article a été modifié) - La concaténation de
cl_to
,cl_type
,cl_sortkey
, etcl_from
(pour afficher les articles dans l'ordre) - La concaténation de
cl_to
etcl_timestamp
- cl_collation
Champs
cl_from
Enregistre le page.page_id de l'article sur lequel le lien a été placé.
cl_to
Enregistre le nom de la catégorie souhaitée dans le format page_title (c'est à dire avec _
et en supprimant le préfixe l'espace de noms).
cl_sortkey
Enregistre le titre par lequel la page sera triée dans une liste de catégorie. Ceci est la clé de tri binaire qui, en fonction de $wgCategoryCollation peut (ou ne peut pas) être lue par un humain (mais qui doit classer dans le bon ordre lorsqu'elle est comparée avec une chaîne d'octets)
cl_timestamp
Enregistre la date à laquelle ce lien a été dernièrement mis à jour dans la table.
cl_sortkey_prefix
Il s'agit soit de la chaîne vide si une page utilise la clé de tri par défaut (c'est à dire que la clé de tri n'est pas spécifiée). Sinon, il s'agit de la version de cl_sortkey
lisible par un humain. Nécessite la plupart du temps que cl_sortkey
soit facilement mise à jour dans certaines situations sans réanalyser la page entière.
Otherwise it is the human readable version of the first part of cl_sortkey
.
Needed mostly so that cl_sortkey
can be easily updated in certain situations without re-parsing the entire page.
More recently added values are valid UTF-8 (see gerrit:449280).
cl_collation
Version de MediaWiki : | ≥ 1.17 |
Indique la collation en cours. Si la collation est modifiée, le script updateCollation.php connaît ainsi les lignes à corriger dans la base de données.
cl_type
De quel type de page s'agit-il : (file
, subcat
(sous-catégorie) ou page
(page normale)). Utilisé de sorte à ce que les différentes sections d'une page de catégorie puissent être regroupées indépendamment et de manière efficace.
Résumé du schéma
Version de MediaWiki : | ≥ 1.17 |
DESCRIBE categorylinks;
+-------------------+------------------------------+------+-----+-------------------+-----------------------------+ | Field | Type | Null | Key | Default | Extra | +-------------------+------------------------------+------+-----+-------------------+-----------------------------+ | cl_from | int(10) unsigned | NO | PRI | 0 | | | cl_to | varbinary(255) | NO | PRI | | | | cl_sortkey | varbinary(230) | NO | | | | | cl_sortkey_prefix | varbinary(255) | NO | | | | | cl_timestamp | timestamp | NO | | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP | | cl_collation | varbinary(32) | NO | MUL | | | | cl_type | enum('page','subcat','file') | NO | | page | | +-------------------+------------------------------+------+-----+-------------------+-----------------------------+
Versions de MediaWiki : | 1.10 – 1.16 |
DESCRIBE categorylinks;
+--------------+------------------+------+-----+-------------------+-----------------------------+ | Field | Type | Null | Key | Default | Extra | +--------------+------------------+------+-----+-------------------+-----------------------------+ | cl_from | int(10) unsigned | NO | PRI | 0 | | | cl_to | varbinary(255) | NO | PRI | | | | cl_sortkey | varbinary(70) | NO | | | | | cl_timestamp | timestamp | NO | | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP | +--------------+------------------+------+-----+-------------------+-----------------------------+
Versions de MediaWiki : | 1.5 – 1.9 |
DESCRIBE categorylinks;
+--------------+-----------------+------+-----+-------------------+-----------------------------+ | Field | Type | Null | Key | Default | Extra | +--------------+-----------------+------+-----+-------------------+-----------------------------+ | cl_from | int(8) unsigned | NO | PRI | 0 | | | cl_to | varchar(255) | NO | PRI | | | | cl_sortkey | varchar(86) | NO | | | | | cl_timestamp | timestamp | NO | | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP | +--------------+-----------------+------+-----+-------------------+-----------------------------+
Versions de MediaWiki : | 1.3 – 1.4 |
DESCRIBE categorylinks;
+--------------+-----------------+------+-----+-------------------+-----------------------------+ | Field | Type | Null | Key | Default | Extra | +--------------+-----------------+------+-----+-------------------+-----------------------------+ | cl_from | int(8) unsigned | NO | PRI | 0 | | | cl_to | varchar(255) | NO | PRI | | | | cl_sortkey | varchar(255) | NO | | | | | cl_timestamp | timestamp | NO | | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP | +--------------+-----------------+------+-----+-------------------+-----------------------------+
Les index
Version de MediaWiki : | ≥ 1.42 |
SHOW INDEX IN categorylinks;
+---------------+------------+--------------+--------------+--------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | +---------------+------------+--------------+--------------+--------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | categorylinks | 0 | PRIMARY | 1 | cl_from | A | 0 | NULL | NULL | | BTREE | | | | categorylinks | 0 | PRIMARY | 2 | cl_to | A | 0 | NULL | NULL | | BTREE | | | | categorylinks | 1 | cl_sortkey | 1 | cl_to | A | 0 | NULL | NULL | | BTREE | | | | categorylinks | 1 | cl_sortkey | 2 | cl_type | A | 0 | NULL | NULL | | BTREE | | | | categorylinks | 1 | cl_sortkey | 3 | cl_sortkey | A | 0 | NULL | NULL | | BTREE | | | | categorylinks | 1 | cl_sortkey | 4 | cl_from | A | 0 | NULL | NULL | | BTREE | | | | categorylinks | 1 | cl_timestamp | 1 | cl_to | A | 0 | NULL | NULL | | BTREE | | | | categorylinks | 1 | cl_timestamp | 2 | cl_timestamp | A | 0 | NULL | NULL | | BTREE | | | +---------------+------------+--------------+--------------+--------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
Voir aussi
Liens externes
- Exemple Page listant quelques catégories.