Manuel:table old

This page is a translated version of the page Manual:Old table and the translation is 100% complete.
Manuel:Contenu Schéma de base de données MédiaWiki table old
Version de MediaWiki :
1.4
Les tables cur et old ont été remplacées en 2004.

La table old est l'endroit où les versions de MediaWiki jusqu'à la 1.4 enregistrent les versions historiques des articles. Ces versions de MediaWiki écrivent la version courante des articles dans la table cur . La plupart des champs de la table old ont leur correspondant dans la table cur .

Dans MediaWiki 1.5 le contenu de la table old et celui de la table cur ont été fusionnés ensemble et déplacés vers la table page et la table revision . Finalement la table old a été renommée table text . Ainsi, la table text contient encore quelques anciennes colonnes qui faisaient partie de la table old et qui ne sont plus utiles dans la table text.

Après avoir exécuté la mise à jour lors d'une mise à niveau de MediaWiki 1.4 (ou antérieur) vers une version plus récente, tous les champs de la table text sauf old_id, old_text, old_flags ne sont plus nécessaires et peuvent être directement supprimés. For MediaWiki 1.35 and older, these fields must no longer be present to avoid database errors when attempting to edit a page.

Le contenu de old_text peut être compressé tel qu'indiqué par « gzip » dans le champ old_flags. (Les données sont compressées avec la fonction gzdeflate de PHP: il n'y a pas d'entête gzip ni de somme de contrôle (checksum). Fixez la taille de la fenêtre à une valeur négative si vous n'utilisez pas PHP pour lire les données.)

old_id sert d'index unique pour une révision donnée, avec quelques mises en garde :

  • Depuis que la table cur héberge séparément la révision la plus récente, old_id ne reçoit plus de numéro de révision de page, si la valeur qu'il contient n'est plus celle de la révision la plus récente
  • Depuis que la table archive ne conserve plus le numéro old_id, il sera différent après la suppression ou la restauration (l'ancien numéro n'est pas réutilisé). Néanmoins le numéro de révision (rev_id) sera utilisé de sorte que les liens qui pointent vers une révision spécifique fonctionneront encore après la suppression ou la restauration.
  • old_id n'est pas nécessairement un numérique chronologique, que ce soit dans l'historique d'une même page ou bien dans la base de données complète

old_timestamp peut également ne pas être unique dans la suite de l'historique d'une page.

Résumé du schéma

Version de MediaWiki :
1.4

DESCRIBE old;

mysql> DESCRIBE old;
+-------------------+---------------------+------+-----+---------+----------------+
| Field             | Type                | Null | Key | Default | Extra          |
+-------------------+---------------------+------+-----+---------+----------------+
| old_id            | int(8) unsigned     |      | PRI | NULL    | auto_increment |
| old_namespace     | tinyint(2) unsigned |      |     | 0       |                |
| old_title         | varchar(255) binary |      |     |         |                |
| old_text          | mediumtext          |      |     |         |                |
| old_comment       | tinyblob            |      |     |         |                |
| old_user          | int(5) unsigned     |      |     | 0       |                |
| old_user_text     | varchar(255) binary |      |     |         |                |
| old_timestamp     | varchar(14) binary  |      |     |         |                |
| old_minor_edit    | tinyint(1)          |      |     | 0       |                |
| old_flags         | tinyblob            |      |     |         |                |
| inverse_timestamp | varchar(14) binary  |      |     |         |                |
+-------------------+---------------------+------+-----+---------+----------------+

Les index

Version de MediaWiki :
1.4

SHOW INDEX IN old;

+-------+------------+----------------------+--------------+-------------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| Table | Non_unique | Key_name             | Seq_in_index | Column_name       | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
+-------+------------+----------------------+--------------+-------------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| old   |          0 | PRIMARY              |            1 | old_id            | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| old   |          1 | old_timestamp        |            1 | old_timestamp     | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| old   |          1 | name_title_timestamp |            1 | old_namespace     | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| old   |          1 | name_title_timestamp |            2 | old_title         | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| old   |          1 | name_title_timestamp |            3 | inverse_timestamp | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| old   |          1 | user_timestamp       |            1 | old_user          | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| old   |          1 | user_timestamp       |            2 | inverse_timestamp | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| old   |          1 | usertext_timestamp   |            1 | old_user_text     | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| old   |          1 | usertext_timestamp   |            2 | inverse_timestamp | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
+-------+------------+----------------------+--------------+-------------------+-----------+-------------+----------+--------+------+------------+---------+---------------+