Manual:categorylinks テーブル
↑ Manual:コンテンツ | MediaWiki のデータベース レイアウト | categorylinks テーブル |
MediaWiki バージョン: | ≧ 1.3 |
categorylinks テーブルには、[[Category:カテゴリ名]]
または [[Category:カテゴリ名|ソートキー]]
という形式のリンクに対応する項目が格納されており、ページ上の任意の場所に置かれると、そのページは「カテゴリ名」という名前のカテゴリに配置されます (その関連付けられたページは存在してもしなくてもいい)。
[[:Category:カテゴリ名]]
のようにコロンで始まるリンクは、categorylinks
テーブルには格納されず、通常の内部リンクとして扱われます (この場合、リンク先はページ Category:カテゴリ名 です)。
カテゴリ ページの編集可能な部分は、他のページと同様に保管されます。
パフォーマンスを向上させるための 4 つのインデックスがあります:
cl_from
とcl_to
の連結 (記事が編集されたとき用)cl_to
、cl_type
、cl_sortkey
、cl_from
の結合 (記事を順番に表示するため)cl_to
とcl_timestamp
の結合- cl_collation
フィールド
cl_from
Stores the page.page_id of the article where the link was placed.
cl_to
Stores the name of the desired category in the page_title format (that is, with _
and excluding namespace prefix).
cl_sortkey
Stores the title by which the page should be sorted in a category list. This is the binary sortkey, that depending on $wgCategoryCollation may or may not be readable by a human (but should sort in correct order when comparing as a byte string), and is not valid UTF-8 whenever the database truncates the sortkey in the middle of a multi-byte sequence.
cl_timestamp
Stores the time at which that link was last updated in the table.
cl_sortkey_prefix
This is either the empty string if a page is using the default sortkey (aka the sortkey is unspecified).
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
MediaWiki バージョン: | ≧ 1.17 |
What collation is in use. Used so that if the collation changes, the updateCollation.php script knows what rows need to be fixed in db.
cl_type
What type of page is this (file
, subcat
(subcategory) or page
(normal page)). Used so that the different sections on a category page can be paged independently in an efficient manner.
スキーマの要約
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 | | +-------------------+------------------------------+------+-----+-------------------+-----------------------------+
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 | +--------------+------------------+------+-----+-------------------+-----------------------------+
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 | +--------------+-----------------+------+-----+-------------------+-----------------------------+
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 | +--------------+-----------------+------+-----+-------------------+-----------------------------+
インデックス
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 | | | +---------------+------------+--------------+--------------+--------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
関連項目
External links
- Example The page list of some category.