Manual:Revision table/ja

revision テーブル は、wiki の中でページにされたすべての編集のためにメタデータを保持します. すべてのページの編集はリビジョンレコードを生成し、そしてそれは編集をした利用者、編集がされた時間、および、新しい wiki テキストへの参照のような情報を text テーブルの中に保持します.

ここで留意すべきは、レコードは新しい wiki テキストの一部が編集操作についてであり、一部がその編集操作の結果である事です. それは古い wiki テキストに参照を与えません.

別の wiki からのページの最後のリビジョンのインポートは、Revision テーブルの中に２つのエントリーを作りますが、1つは日付とインポートされたリビジョンの wiki テキストで、もう1つはインポートの日付です. 現在のページになる最新の wiki テキストは、同じ名前のページが既に存在している場合には、2つのページのなかで、より最近のものです.

revision テーブルは Recentchanges テーブルに非常に類似しています. Revision テーブルは ページの履歴 と 利用者の投稿記録 リストのために使用されます. Recentchanges テーブル は、最近更新したページ、リンク先の更新状況、ウォッチリスト、そしてページが生成された場合の 特別:新しいページ のために使用されます.

差分は以下を含みます:
 * Recentchanges テーブルはページの移動と削除のようなログイベントも記録します.
 * Recentchanges テーブルの項目は定期的に消去されます; Revision テープルでのそれらは通常ではもっと長く、あるいはいつまでも保持されます.
 * 説明の通り、ページリビジョンの インポート がインポート日付のみで Revision テーブルへのエントリーを加えるだけではありませんが、しかしオリジナルの日付のものもあります.

削除されたリビジョンはarchive tableに移動されます.

rev_id
このフィールドはそれぞれのリビジョンのために主キーを保持します. page_latest is a foreign key to this field.

rev_page
このフィールドはリビジョンに関係する page テーブル の参照を保持します. このフィールドの中の番号は当該のページの page_id フィールドと等しくなります. これは決して無効であるべきではありません. if it is, that revision won't show up in the page history. If links to a revision with an invalid rev_page, this will cause the "The revision #0 of the page named 'Foo' does not exist" error.

rev_text_id
これは、実際の大量のテキストが保管されている Text テーブルの中の old_id  へのポインターです. 複数のリビジョンで同じテキストを使うことは可能です. &mdash; 例としては、メタデータのみが改訂できる、あるいは以前のバージョンにロールバックされるリビジョンです.

Deprecated since 1.31. If rows in the slots table with = rev_id exist, this field should be ignored (and may be 0) in favor of the corresponding data from the slots and content tables.

rev_comment
このフィールドは編集者の 編集内容の要約 (編集者のリビジョンでのコメント) を保持します. このテキストは、履歴と、利用者の投稿記録 で表示されます. ( Recentchanges テーブル は 最近更新したページ、リンク先の更新状況、ウォッチリスト、そしてページが生成された場合での 新規ページのリストで使用するためのコピーを格納します. ) それは、不適切な部分を削除された wiki マークアップのサブセットでレンダリングされます.

Deprecated; revcomment_comment_id of the revision_comment_temp table and the comment table should be used instead!

rev_user
これは、編集をした利用者の user_id と同じで. このフィールドは、匿名の編集、初期化スクリプト、そして一部のまとまったインポートで 0 の値になります.

Note, there are bugs: T112384.

rev_user_text
このフィールドは編集者の利用者名のテキスト、あるいはリビジョンが無登録の利用者によってされた場合は編集者の IP アドレスを保持します.

In anonymous revisions imported from UseModWiki or early incarnations of the Phase II software, this field may contain an IP address with the final octet obscured (i.e.  such as 24.150.61.xxx; see bug 3631). Some edits imported from UseModWiki may contain a Reverse DNS lookup hostname like  or.

rev_timestamp
編集の タイムスタンプ を保持します.

rev_minor_edit
利用者が 'これは細部の編集です' チェックボックスにマークをしたかどうか記録します. このフィールドの値が 1 である場合、編集は '細部の編集' として申告されています. ; それ以外は 0 です.

rev_deleted
このフィールドは RevisionDelete システムに予約されています. It's a bitfield in which the values are DELETED_TEXT = 1; DELETED_COMMENT = 2; DELETED_USER = 4; and DELETED_RESTRICTED = 8. So, for example, if nothing has been deleted from that revision, then the value is 0; if both the comment and user have been deleted, then the value is 6.

rev_len
このフィールドはリビジョンの長さを、バイト単位で格納します. 履歴ページで使用されています. Corresponds to rc_new_len.

rev_parent_id
The rev_id of the previous revision to the page. Corresponds to rc_last_oldid.

For edits which are new page creations, rev_parent_id = 0.

Usage
このフィールドはツリー構造 (The Adjacency List Model) のサポートを追加するために使用されます. It is e.g. used to calculate the size difference of a certain revision with the previous revision in the page history view. If a parent ID points to a revision that's associated with a different page, MediaWiki will still use that parent revision as a basis of comparison for purposes of calculating size difference. If a revision is deleted from the database, and another revision's parent ID still points to it, then MediaWiki will behave the same as if there were no parent revision; i.e. it will assume the previous size was 0.

Transferred revisions
When revisions are imported from another wiki, the imported revisions' parent ID tree structure from the source wiki is retained (this is implemented by each revision's, other than the tail revision, having a XML element that is used to populate rev_parent_id), and the destination wiki's revisions' parent IDs are not updated. Likewise, when page histories are merged, the parent IDs of the revisions from the source and destination pages are not updated. populateParentId.php can be used to populate rev_parent_id based on revision timestamps and revision IDs. In the case of an edit conflict, the revision ID of the edit that is saved first (causing the conflict) will be used as the parent ID of the edit that is saved second (after resolving the conflict).

rev_sha1
This field is used to add the SHA-1 text content hash in base-36 (generated by wfBaseConvert.)

rev_content_model
コンテンツ モデル. Defines.php 内で定義されている CONTENT_MODEL_XXX 定数を参照してください. These IDs will be exposed in the API and XML dumps. Extensions that define their own content model IDs should take care to avoid conflicts. Using the extension name as a prefix is recommended, for example 'myextension-somecontent'. Possible values are, e.g., 'wikitext', 'javascript', 'css', 'text', and 'json'.

Deprecated since 1.31. If rows in the slots table with slot_revision_id = rev_id this field should be ignored (and may be NULL) in favor of the corresponding data from the slots and content tables.

rev_content_format
コンテンツ形式. Defines.php 内で定義されている CONTENT_FORMAT_XXX 定数を参照してください. These should be MIME types, and will be exposed in the API and XML dumps. Extensions are free to use the below formats, or define their own. It is recommended to stick with the conventions for MIME types. Possible values are, e.g., 'text/x-wiki', 'text/javascript', 'text/css', 'text/plain', 'text/html', 'application/vnd.php.serialized', 'application/json', and 'application/xml'.

Deprecated since 1.31. If rows in the slots table with slot_revision_id = rev_id exist, this field should be ignored (and may be NULL).

スキーマ概要
DESCRIBE revision; ++-+--+-+-++ ++-+--+-+-++ ++-+--+-+-++
 * Field             | Type                | Null | Key | Default | Extra          |
 * rev_id            | int(10) unsigned    | NO   | PRI | NULL    | AUTO_INCREMENT |
 * rev_page          | int(10) unsigned    | NO   | PRI | NULL    |                |
 * rev_text_id       | int(10) unsigned    | NO   |     | NULL    |                |
 * rev_comment       | varbinary(767)      | NO   |     | NULL    |                |
 * rev_user          | int(10) unsigned    | NO   | MUL | 0       |                |
 * rev_user_text     | varchar(255) binary | NO   | MUL | NULL    |                |
 * rev_timestamp     | binary(14)          | NO   | MUL | NULL    |                |
 * rev_minor_edit    | tinyint(3) unsigned | NO   |     | 0       |                |
 * rev_deleted       | tinyint(3) unsigned | NO   |     | 0       |                |
 * rev_len           | int(10) unsigned    | YES  |     | NULL    |                |
 * rev_parent_id     | int(10) unsigned    | YES  |     | NULL    |                |
 * rev_sha1          | varbinary(32)       | NO   |     | NULL    |                |
 * rev_content_model | varbinary(32)       | YES  |     | NULL    |                |
 * rev_content_format | varbinary(64)      | YES  |     | NULL    |                |

DESCRIBE revision; ++-+--+-+-++ ++-+--+-+-++ ++-+--+-+-++
 * Field             | Type                | Null | Key | Default | Extra          |
 * rev_id            | int(10) unsigned    | NO   | PRI | NULL    | AUTO_INCREMENT |
 * rev_page          | int(10) unsigned    | NO   | PRI | NULL    |                |
 * rev_text_id       | int(10) unsigned    | NO   |     | NULL    |                |
 * rev_comment       | tinyblob            | NO   |     | NULL    |                |
 * rev_user          | int(10) unsigned    | NO   | MUL | 0       |                |
 * rev_user_text     | varchar(255) binary | NO   | MUL | NULL    |                |
 * rev_timestamp     | binary(14)          | NO   | MUL | NULL    |                |
 * rev_minor_edit    | tinyint(3) unsigned | NO   |     | 0       |                |
 * rev_deleted       | tinyint(3) unsigned | NO   |     | 0       |                |
 * rev_len           | int(10) unsigned    | YES  |     | NULL    |                |
 * rev_parent_id     | int(10) unsigned    | YES  |     | NULL    |                |
 * rev_sha1          | varbinary(32)       | NO   |     | NULL    |                |
 * rev_content_model | varbinary(32)       | YES  |     | NULL    |                |
 * rev_content_format | varbinary(64)      | YES  |     | NULL    |                |

DESCRIBE revision; ++-+--+-+-++ ++-+--+-+-++ ++-+--+-+-++
 * Field         | Type                | Null | Key | Default | Extra          |
 * rev_id        | int(10) unsigned    | NO   | PRI | NULL    | AUTO_INCREMENT |
 * rev_page      | int(10) unsigned    | NO   | PRI | NULL    |                |
 * rev_text_id   | int(10) unsigned    | NO   |     | NULL    |                |
 * rev_comment   | tinyblob            | NO   |     | NULL    |                |
 * rev_user      | int(10) unsigned    | NO   | MUL | 0       |                |
 * rev_user_text | varchar(255) binary | NO   | MUL | NULL    |                |
 * rev_timestamp | binary(14)          | NO   | MUL | NULL    |                |
 * rev_minor_edit | tinyint(3) unsigned | NO  |     | 0       |                |
 * rev_deleted   | tinyint(3) unsigned | NO   |     | 0       |                |
 * rev_len       | int(10) unsigned    | YES  |     | NULL    |                |
 * rev_parent_id | int(10) unsigned    | YES  |     | NULL    |                |
 * rev_sha1      | varbinary(32)       | NO   |     | NULL    |                |

DESCRIBE revision; ++-+--+-+-++ ++-+--+-+-++ ++-+--+-+-++
 * Field         | Type                | Null | Key | Default | Extra          |
 * rev_id        | int(10) unsigned    | NO   | PRI | NULL    | AUTO_INCREMENT |
 * rev_page      | int(10) unsigned    | NO   | PRI | NULL    |                |
 * rev_text_id   | int(10) unsigned    | NO   |     | NULL    |                |
 * rev_comment   | tinyblob            | NO   |     | NULL    |                |
 * rev_user      | int(10) unsigned    | NO   | MUL | 0       |                |
 * rev_user_text | varchar(255) binary | NO   | MUL | NULL    |                |
 * rev_timestamp | binary(14)          | NO   | MUL | NULL    |                |
 * rev_minor_edit | tinyint(3) unsigned | NO  |     | 0       |                |
 * rev_deleted   | tinyint(3) unsigned | NO   |     | 0       |                |
 * rev_len       | int(10) unsigned    | YES  |     | NULL    |                |
 * rev_parent_id | int(10) unsigned    | YES  |     | NULL    |                |

DESCRIBE revision; ++-+--+-+-++ ++-+--+-+-++ ++-+--+-+-++
 * Field         | Type                | Null | Key | Default | Extra          |
 * rev_id        | int(8) unsigned     | NO   | PRI | NULL    | AUTO_INCREMENT |
 * rev_page      | int(8) unsigned     | NO   | PRI | NULL    |                |
 * rev_text_id   | int(8) unsigned     | NO   |     | NULL    |                |
 * rev_comment   | tinyblob            | NO   |     | NULL    |                |
 * rev_user      | int(5) unsigned     | NO   | MUL | 0       |                |
 * rev_user_text | varchar(255) binary | NO   | MUL | NULL    |                |
 * rev_timestamp | char(14) binary     | NO   | MUL | NULL    |                |
 * rev_minor_edit | tinyint(1) unsigned | NO  |     | 0       |                |
 * rev_deleted   | tinyint(1) unsigned | NO   |     | 0       |                |

Indices
SHOW INDEX IN revision;  +--++-+--+---+---+-+--++--++-+---+ +--++-+--+---+---+-+--++--++-+---+ +--++-+--+---+---+-+--++--++-+---+
 * Table   | Non_unique | Key_name            | Seq_in_index | Column_name   | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
 * revision |         0 | PRIMARY             |            1 | rev_id        | A         |           1 |     NULL | NULL   |      | BTREE      |         |               |
 * revision |         0 | rev_page_id         |            1 | rev_page      | A         |           1 |     NULL | NULL   |      | BTREE      |         |               |
 * revision |         0 | rev_page_id         |            2 | rev_id        | A         |           1 |     NULL | NULL   |      | BTREE      |         |               |
 * revision |         1 | rev_timestamp       |            1 | rev_timestamp | A         |           1 |     NULL | NULL   |      | BTREE      |         |               |
 * revision |         1 | page_timestamp      |            1 | rev_page      | A         |           1 |     NULL | NULL   |      | BTREE      |         |               |
 * revision |         1 | page_timestamp      |            2 | rev_timestamp | A         |           1 |     NULL | NULL   |      | BTREE      |         |               |
 * revision |         1 | user_timestamp      |            1 | rev_user      | A         |           1 |     NULL | NULL   |      | BTREE      |         |               |
 * revision |         1 | user_timestamp      |            2 | rev_timestamp | A         |           1 |     NULL | NULL   |      | BTREE      |         |               |
 * revision |         1 | usertext_timestamp  |            1 | rev_user_text | A         |           1 |     NULL | NULL   |      | BTREE      |         |               |
 * revision |         1 | usertext_timestamp  |            2 | rev_timestamp | A         |           1 |     NULL | NULL   |      | BTREE      |         |               |
 * revision |         1 | page_user_timestamp |            1 | rev_page      | A         |           1 |     NULL | NULL   |      | BTREE      |         |               |
 * revision |         1 | page_user_timestamp |            2 | rev_user      | A         |           1 |     NULL | NULL   |      | BTREE      |         |               |
 * revision |         1 | page_user_timestamp |            3 | rev_timestamp | A         |           1 |     NULL | NULL   |      | BTREE      |         |               |