Cur table/ja
From MediaWiki.org
| ↑ Manual:Contents/ja | MediaWiki データベース レイアウト | Cur table/ja |
MediaWiki version: 1.4
Cur テーブル は MediaWiki が現在の版のデータを保存するテーブルです。
"DESCRIBE cur" の結果は以下のようになります :
| Field | Type | Null | Key | Default | Extra |
|---|---|---|---|---|---|
| cur_id | int(8) unsigned | PRI | auto_increment | ||
| cur_namespace | tinyint(2) unsigned | MUL | 0 | ||
| cur_title | varchar(255) binary | MUL | |||
| cur_text | mediumtext | ||||
| cur_comment | tinyblob | ||||
| cur_user | int(5) unsigned | MUL | 0 | ||
| cur_user_text | varchar(255) binary | MUL | |||
| cur_timestamp | varchar(14) binary | MUL | |||
| cur_restrictions | tinyblob | ||||
| cur_counter | bigint(20) unsigned | 0 | |||
| cur_is_redirect | tinyint(1) unsigned | 0 | |||
| cur_minor_edit | tinyint(1) unsigned | 0 | |||
| cur_is_new | tinyint(1) unsigned | 0 | |||
| cur_random | double unsigned | MUL | 0 | ||
| inverse_timestamp | varchar(14) binary | ||||
| cur_touched | varchar(14) binary |
現在ある特定のページにアクセスするためには、cur_id を指定するか、またはcur_namespace と cur_title の組み合わせによって検索します。cur_title は通常項目名となるものですが、ここで留意すべきは cur_namespace が異なれば、同一の名前のものが複数存在できることです。たとえば、あれという項目とTalk:あれという項目は、どちらも cur_title があれとなります。がTalk:あれは cur_namespace が 1 になっていることになります。(この場合 namespace 1 が Talk: ということになります。)namespace の名前はそれぞれの言語定義ファイル LanguageXX.php で決定されます。
Cur テーブルにある情報は、該当する項目が最後に変更された状態を保存しています。もし、新規で作成された項目であれば cur_is_new にフラグがたちます。
- cur_text はページの内容そのもののテキストを保存します。
- cur_comment は変更の際、要約欄に付加されたコメントです。
- cur_user は変更した利用者 ID を持ち、IP ユーザの場合 0 となります。
- cur_user_text は利用者の名前または IP アドレスが入ります。
- cur_timestamp は変更された日時です。
- cur_minor_edit は保存時に M を付けたかどうかの情報を保存します。
以上が通常のページ内容に関する情報で、残りの部分は記事の中身とは関係のない情報を保持しています。
- cur_restrictions はどのレベルの利用者が記事を変更できるのかを記録します。現在のウィキペディアでは保護されたページ以外は全て空になっています。
- cur_counter はページが閲覧された回数を記録します。この操作はデータベースに大きな負荷をかけるため、wikipediaでは停止されています。
- cur_is_redirect は、ページがリダイレクトである場合の処理を高速化するためのフラグです。
- cur_random は "random page" を行なう処理の高速化のために使用します。
- inverse_timestamp は MySQL3.1 で使用する場合に cur_timestamp の値を反転して保存するもので、MySQL 4.x では必要なく、今後取り除かれるでしょう。
- cur_touched はキャッシュのためのフラグです。キャッシュに読み込まれた後変更されたかどうかを保存しています。