Manual:category table
↑ Manual:Contents | MediaWiki database layout | category table |
MediaWiki version: | ≥ 1.13 |
The category table tracks all existing categories. Something is a category if it has an entry somewhere in categorylinks table
Categories might not have corresponding pages, so they need to be tracked separately.
cat_pages
, cat_subcats
, and cat_files
are signed to make underflow more obvious.
populateCategory.php
and/or cleanupEmptyCategories.php
, if necessary with the --force
option.Fields
[edit]cat_id
[edit]Primary key
cat_title
[edit]Name of the category, in the same form as page .page_title (with underscores). If there is a category page corresponding to this category, by definition, it has this name (in the Category namespace).
cat_pages
[edit]Number of pages in the category. This number includes the number of subcategories and the number of files.
cat_subcats
[edit]Number of sub-categories in the category.
cat_files
[edit]Number of files (i.e. Image: namespace members) in the category.
cat_hidden
[edit]MediaWiki version: | ≤ 1.19 |
Was reserved for future use; apparently no one found a use for it because it was removed in v1.20.
Instead, the status of hidden categories is stored in the page_props table as the property "hiddencat" in pp_propname
.
Schema summary
[edit]MediaWiki version: | ≥ 1.20 |
DESCRIBE category;
+-------------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------+------------------+------+-----+---------+----------------+ | cat_id | int(10) unsigned | NO | PRI | NULL | auto_increment | | cat_title | varbinary(255) | NO | UNI | NULL | | | cat_pages | int(11) | NO | MUL | 0 | | | cat_subcats | int(11) | NO | | 0 | | | cat_files | int(11) | NO | | 0 | | +-------------+------------------+------+-----+---------+----------------+
MediaWiki versions: | 1.13 – 1.19 |
DESCRIBE category;
+-------------+---------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------+---------------------+------+-----+---------+----------------+ | cat_id | int(10) unsigned | NO | PRI | NULL | auto_increment | | cat_title | varbinary(255) | NO | UNI | NULL | | | cat_pages | int(11) | NO | MUL | 0 | | | cat_subcats | int(11) | NO | | 0 | | | cat_files | int(11) | NO | | 0 | | | cat_hidden | tinyint(3) unsigned | NO | | 0 | | +-------------+---------------------+------+-----+---------+----------------+
Indexes
[edit]MediaWiki version: | ≥ 1.13 |
SHOW INDEX IN category;
+----------+------------+-----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | +----------+------------+-----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | category | 0 | PRIMARY | 1 | cat_id | A | 0 | NULL | NULL | | BTREE | | | | category | 0 | cat_title | 1 | cat_title | A | 0 | NULL | NULL | | BTREE | | | | category | 1 | cat_pages | 1 | cat_pages | A | 0 | NULL | NULL | | BTREE | | | +----------+------------+-----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+