Manual:categorylinks/ja table

From Linux Web Expert


Manual:コンテンツ <translate> MediaWiki database layout</translate> <translate> <tvar name=1>categorylinks/ja</tvar> table</translate>
MediaWiki バージョン:
<translate> ≥</translate> 1.3

categorylinks テーブルには、[[Category:カテゴリ名]] または [[Category:カテゴリ名|ソートキー]] という形式のリンクに対応する項目が格納されており、ページ上の任意の場所に置かれると、そのページは「カテゴリ名」という名前のカテゴリに配置されます (その関連付けられたページは存在してもしなくてもいい)。 [[:Category:カテゴリ名]] のようにコロンで始まるリンクは、categorylinks テーブルには格納されず、通常の内部リンクとして扱われます (この場合、リンク先はページ Category:カテゴリ名 です)。 The editable parts of category pages are stored like other pages.

There are four indexes which help improve performance:

  • The concatenation of cl_from and cl_to (for when an article is edited)
  • The concatenation of cl_to, cl_type, cl_sortkey, and cl_from (for showing articles in order)
  • The concatenation of cl_to and 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 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 change 449280 on Gerrit).

cl_collation

MediaWiki バージョン:
<translate> ≥</translate> 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 バージョン:
<translate> ≥</translate> 1.17

DESCRIBE categorylinks/ja;

+-------------------+------------------------------+------+-----+-------------------+-----------------------------+
| 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              |                             |
+-------------------+------------------------------+------+-----+-------------------+-----------------------------+
File:OOjs UI icon notice-destructive.svg <translate> Warning:</translate> Starting with version 1.17, the index on (cl_to, cl_sortkey) is no more, and replaced with one on (cl_to, cl_type, cl_sortkey, cl_from). Extensions that directly query the categorylinks table to get a list of pages in sorted order need to make sure they are using the new index, or the query may become very inefficient
<td class="mw-version-versionbox" title="<translate nowrap> MediaWiki <tvar name=1>1.16</tvar> is unsupported version</translate>">
1.10 – 1.16
<translate> MediaWiki versions:</translate>

DESCRIBE categorylinks/ja;

+--------------+------------------+------+-----+-------------------+-----------------------------+
| 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 |
+--------------+------------------+------+-----+-------------------+-----------------------------+
<td class="mw-version-versionbox" title="<translate nowrap> MediaWiki <tvar name=1>1.9</tvar> is unsupported version</translate>">
1.5 – 1.9
<translate> MediaWiki versions:</translate>

DESCRIBE categorylinks/ja;

+--------------+-----------------+------+-----+-------------------+-----------------------------+
| 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 |
+--------------+-----------------+------+-----+-------------------+-----------------------------+
<td class="mw-version-versionbox" title="<translate nowrap> MediaWiki <tvar name=1>1.4</tvar> is unsupported version</translate>">
1.3 – 1.4
<translate> MediaWiki versions:</translate>

DESCRIBE categorylinks/ja;

+--------------+-----------------+------+-----+-------------------+-----------------------------+
| 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 |
+--------------+-----------------+------+-----+-------------------+-----------------------------+

インデックス

<td class="mw-version-versionbox" title="<translate nowrap> The latest stable version is <tvar name=1>1.41</tvar></translate>">
<translate> ≥</translate> 1.42
<translate> MediaWiki version:</translate>

SHOW INDEX IN categorylinks/ja;

+---------------+------------+--------------+--------------+--------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| 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