Revision table/ja

From MediaWiki.org

Jump to: navigation, search
Manual:Contents/ja MediaWiki データベース レイアウト Revision table/ja


MediaWiki version: 1.5 and after

Contents

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

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

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

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

差分のインクルード:

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

[edit] フィールド

[edit] rev_id

このフィールドはそれぞれのリビジョンのために主キーを保持します。

[edit] rev_page

このフィールドはリビジョンに関係する page の参照を保持します。このフィールドの中の番号は当該のページの page_id フィールドと等しくなります。 これは決して無効であるべきではありません。

[edit] rev_text_id

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

[edit] rev_comment

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

[edit] rev_user

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

[edit] rev_user_text

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

[edit] rev_timestamp

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

[edit] rev_minor_edit

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

[edit] rev_deleted

このフィールドは 削除システムへの将来の変更 のために予約されていて、まだ使用されていません。

[edit] rev_len

MediaWiki version: 1.10 and after

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

[edit] rev_parent_id

MediaWiki version: 1.10 and after

このフィールドはツリー構造 (The Adjacency List Model) のサポートを追加するために使用されます。

[edit] スキーマ概要

MediaWiki version: 1.10
MediaWiki version: 1.11

DESCRIBE revision により、MediaWiki 1.10 においては下記の内容を示します。:

mysql> describe mw_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)        | NO   | MUL | NULL    |                |
| rev_timestamp  | char(14)            | NO   | MUL | NULL    |                |
| rev_minor_edit | tinyint(1) unsigned | NO   |     | 0       |                |
| rev_deleted    | tinyint(1) unsigned | NO   |     | 0       |                |
| rev_len        | int(8) unsigned     | YES  |     | NULL    |                |
| rev_parent_id  | int(8) unsigned     | YES  |     | NULL    |                |
+----------------+---------------------+------+-----+---------+----------------+
11 rows in set
MediaWiki version: 1.9
MediaWiki version: 1.8
MediaWiki version: 1.7
MediaWiki version: 1.6
MediaWiki version: 1.5

DESCRIBE revision により、MediaWiki 1.9 以下 においては下記の内容を示します。:

mysql> describe mw_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)        | NO   | MUL | NULL    |                |
| rev_timestamp  | char(14)            | NO   | MUL | NULL    |                |
| rev_minor_edit | tinyint(1) unsigned | NO   |     | 0       |                |
| rev_deleted    | tinyint(1) unsigned | NO   |     | 0       |                |
+----------------+---------------------+------+-----+---------+----------------+
9 rows in set