Manuel:table cur
↑ Manuel:Contenu | Schéma de base de données MédiaWiki | table cur |
Version de MediaWiki : | ≤ 1.4 |
La table cur
était utilisée dans les anciennes versions des wikis MediaWiki pour enregistrer la révision actuelle des pages.
Dans MediaWiki 1.5 le contenu de la table cur ainsi que celui de la table old furent fusionnés ensemble et déplacés vers les tables page , revision et text .
Après avoir fait la mise à jour de MediaWiki 1.4 (ou plus ancien) vers une version plus récente, cette table n'est plus nécessaire et elle peut être directement supprimée.
Une façon d'accéder de manière unique à la version actuelle d'un article était via cur_id, mais vous pouvez également utiliser la combinaison cur_title et cur_namespace.
Notez qu'il peut exister plusieurs entrées avec le même cur_title
dans la table cur
, par exemple , Stuff et Talk:Stuff se différencient par le champ cur_namespace
; les valeurs entières et leur nom correspondant (c'est à dire 1="Talk") sont initialisées dans le fichier LanguageXX.php approprié et sont également affichées en utilisant les variables.
Certaines informations dans la table cur sont relatives à la dernière modification de l'article (qui peut correspondre à sa création, ce qui est indiqué par cur_is_new).
cur_text contient le code wiki.
cur_comment
est le résumé de modification de la dernière mise à jour; cur_user
et cur_user_text
identifient l'utilisateur qui a fait cette modification, alors que cur_user contient l'ID de cet utilisateur, s'il s'était connecté.
cur_timestamp enregistre l'heure et la date de modification, cur_minor_edit conserve l'état de cette case à cocher lors de la sauvegarde.
Les autres champs sont plus ici par raison esthétique :
- cur_restrictions - indique qui peut modifier cette page. Etant donné la nature de Wikipedia, ce champ sera vide pour tous les articles, sauf pour ceux qui sont protégés.
- cur_counter - avait servi fut un temps, à enregitrer le nombre d'accès à chaque page. Cette fonction a été désactivée parce qu'elle générait un traffic de base de données trop important et comportait quelques bogues.
- cur_is_redirect - est une méthode rapide et facile de savoir si cur_text commence par « #REDIRECT » .
- cur_random - utilisé par la fonction « page au hasard » . enregistre un nombre flottant sélectionné aléatoirement entre 0 et 1. Lorsque quelqu'un visite Special:Random le wiki choisit un autre numéro aléatoire et accède à la page dont le cur_random est le plus proche de cette valeur. Ceci semble beaucoup, beaucoup plus rapide que
ORDER BY RAND() LIMIT 1
avec de grands nombres de pages parce ce que ce n'est qu'une simple recherche d'index de colonne. - inverse_timestamp - inverse du champ cur_timestamp pour le classement inverse dans mysql 3.x; ceci n'est plus nécessaire avec mysql 4.x et devrait être supprimé.
- cur_touched - horodatage pour l'invalidation du cache; mis à jour à l'enregistrement des pages et à la création (ou la suppression) des pages liées
Résumé du schéma
Version de MediaWiki : | ≤ 1.4 |
DESCRIBE cur;
+-------------------+---------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------------+---------------------+------+-----+---------+----------------+ | cur_id | int(8) unsigned | | PRI | 0 | auto_increment | | cur_namespace | tinyint(2) unsigned | | MUL | | | | cur_title | varchar(255) binary | | MUL | | | | cur_text | mediumtext | | | | | | cur_comment | tinyblob | | | | | | cur_user | int(5) unsigned | | MUL | 0 | | | cur_user_text | varchar(255) binary | | MUL | | | | cur_timestamp | varchar(14) binary | | MUL | | | | cur_restrictions | tinyblob | | | | | | cur_counter | bigint(20) unsigned | | | 0 | | | cur_is_redirect | tinyint(1) unsigned | | | 0 | | | cur_minor_edit | tinyint(1) unsigned | | | 0 | | | cur_is_new | tinyint(1) unsigned | | | 0 | | | cur_random | double unsigned | | MUL | 0 | | | inverse_timestamp | varchar(14) binary | | | | | | cur_touched | varchar(14) binary | | | | | +-------------------+---------------------+------+-----+---------+----------------+
Les index
Version de MediaWiki : | 1.4 |
SHOW INDEX IN cur;
+-------+------------+------------------------------+--------------+-------------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | +-------+------------+------------------------------+--------------+-------------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | cur | 0 | PRIMARY | 1 | cur_id | A | 0 | NULL | NULL | | BTREE | | | | cur | 0 | name_title | 1 | cur_namespace | A | 0 | NULL | NULL | | BTREE | | | | cur | 0 | name_title | 2 | cur_title | A | 0 | NULL | NULL | | BTREE | | | | cur | 1 | cur_title | 1 | cur_title | A | 0 | 20 | NULL | | BTREE | | | | cur | 1 | cur_timestamp | 1 | cur_timestamp | A | 0 | NULL | NULL | | BTREE | | | | cur | 1 | cur_random | 1 | cur_random | A | 0 | NULL | NULL | | BTREE | | | | cur | 1 | name_title_timestamp | 1 | cur_namespace | A | 0 | NULL | NULL | | BTREE | | | | cur | 1 | name_title_timestamp | 2 | cur_title | A | 0 | NULL | NULL | | BTREE | | | | cur | 1 | name_title_timestamp | 3 | inverse_timestamp | A | 0 | NULL | NULL | | BTREE | | | | cur | 1 | user_timestamp | 1 | cur_user | A | 0 | NULL | NULL | | BTREE | | | | cur | 1 | user_timestamp | 2 | inverse_timestamp | A | 0 | NULL | NULL | | BTREE | | | | cur | 1 | usertext_timestamp | 1 | cur_user_text | A | 0 | NULL | NULL | | BTREE | | | | cur | 1 | usertext_timestamp | 2 | inverse_timestamp | A | 0 | NULL | NULL | | BTREE | | | | cur | 1 | namespace_redirect_timestamp | 1 | cur_namespace | A | 0 | NULL | NULL | | BTREE | | | | cur | 1 | namespace_redirect_timestamp | 2 | cur_is_redirect | A | 0 | NULL | NULL | | BTREE | | | | cur | 1 | namespace_redirect_timestamp | 3 | cur_timestamp | A | 0 | NULL | NULL | | BTREE | | | | cur | 1 | id_title_ns_red | 1 | cur_id | A | 0 | NULL | NULL | | BTREE | | | | cur | 1 | id_title_ns_red | 2 | cur_title | A | 0 | NULL | NULL | | BTREE | | | | cur | 1 | id_title_ns_red | 3 | cur_namespace | A | 0 | NULL | NULL | | BTREE | | | | cur | 1 | id_title_ns_red | 4 | cur_is_redirect | A | 0 | NULL | NULL | | BTREE | | | +-------+------------+------------------------------+--------------+-------------------+-----------+-------------+----------+--------+------+------------+---------+---------------+