Manual:page_restrictions table
â Manual:Contents | MediaWiki database layout | page_restrictions table |
MediaWiki version: | ≥ 1.10 |
The page_restrictions table is used to store page protection levels in MediaWiki 1.10 and later. The most notable feature is the introduction of cascading page protections for high-visibility pages. This table is for restrictions on existing pages only. Protections of non-existent pages are stored in the protected_titles table.
This table was introduced in MediaWiki 1.10 (r19095–r19703), and overrides the page_restrictions field in the page table.
The list of protected pages can be found at Special:ProtectedPages.
Fields
[edit]pr_id
[edit]This is the primary key for the table, and is used to identify a particular row in the table.
pr_page
[edit]This field contains a reference to page_id , which works as the foreign key for this table.
pr_type
[edit]The type of protection (whether it applies to edits, page moves, or similar) is stored in this field.
pr_level
[edit]This column describes the level of protection for the page; full protection for sysop-only pages, semi-protection for autoconfirmed users, or any other levels.
pr_cascade
[edit]This field determines whether cascading protection (meaning that all transcluded pages and files on the page will be protected as well).
pr_user
[edit]MediaWiki version: | ≤ 1.37 |
This field was reserved to support a future per-user edit restriction system, but was never used as partial blocks were implemented as blocks.
pr_expiry
[edit]This field contains the timestamp for pages whose protection has a set expiration date, and has a format similar to the expiry time in the Ipblocks table. Rows that contain a null value in this column are considered to be protected indefinitely.
Schema summary
[edit]MediaWiki version: | ≥ 1.38 |
DESCRIBE page_restrictions;
+------------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------+------------------+------+-----+---------+----------------+ | pr_id | int(10) unsigned | NO | PRI | NULL | auto_increment | | pr_page | int(10) unsigned | NO | MUL | NULL | | | pr_type | varbinary(60) | NO | MUL | NULL | | | pr_level | varbinary(60) | NO | MUL | NULL | | | pr_cascade | tinyint(4) | NO | MUL | NULL | | | pr_expiry | varbinary(14) | YES | | NULL | | +------------+------------------+------+-----+---------+----------------+
MediaWiki versions: | 1.30 – 1.37 |
DESCRIBE page_restrictions;
+------------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------+------------------+------+-----+---------+----------------+ | pr_id | int(10) unsigned | NO | PRI | NULL | auto_increment | | pr_page | int(11) | NO | MUL | NULL | | | pr_type | varbinary(60) | NO | MUL | NULL | | | pr_level | varbinary(60) | NO | MUL | NULL | | | pr_cascade | tinyint(4) | NO | MUL | NULL | | | pr_user | int(10) unsigned | YES | | NULL | | | pr_expiry | varbinary(14) | YES | | NULL | | +------------+------------------+------+-----+---------+----------------+
MediaWiki versions: | 1.23 – 1.29 |
DESCRIBE page_restrictions;
+------------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------+------------------+------+-----+---------+----------------+ | pr_id | int(10) unsigned | NO | PRI | NULL | auto_increment | | pr_page | int(11) | NO | MUL | NULL | | | pr_type | varbinary(60) | NO | MUL | NULL | | | pr_level | varbinary(60) | NO | MUL | NULL | | | pr_cascade | tinyint(4) | NO | MUL | NULL | | | pr_user | int(11) | YES | | NULL | | | pr_expiry | varbinary(14) | YES | | NULL | | +------------+------------------+------+-----+---------+----------------+
MediaWiki versions: | 1.15 – 1.22 |
DESCRIBE page_restrictions;
+------------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------+------------------+------+-----+---------+----------------+ | pr_page | int(8) | NO | MUL | NULL | | | pr_type | varbinary(60) | NO | MUL | NULL | | | pr_level | varbinary(60) | NO | MUL | NULL | | | pr_cascade | tinyint(4) | NO | MUL | NULL | | | pr_user | int(8) | YES | | NULL | | | pr_expiry | varbinary(14) | YES | | NULL | | | pr_id | int(10) unsigned | NO | PRI | NULL | AUTO_INCREMENT | +------------+------------------+------+-----+---------+----------------+
MediaWiki versions: | 1.10 – 1.14 |
DESCRIBE page_restrictions;
+------------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------+------------------+------+-----+---------+----------------+ | pr_page | int(8) | NO | PRI | NULL | | | pr_type | varbinary(60) | NO | PRI | NULL | | | pr_level | varbinary(60) | NO | MUL | NULL | | | pr_cascade | tinyint(4) | NO | MUL | NULL | | | pr_user | int(8) | YES | | NULL | | | pr_expiry | varbinary(14) | YES | | NULL | | | pr_id | int(10) unsigned | NO | UNI | NULL | AUTO_INCREMENT | +------------+------------------+------+-----+---------+----------------+
Indexes
[edit]MediaWiki version: | ≥ 1.15 |
SHOW INDEX IN page_restrictions;
+-------------------+------------+--------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | +-------------------+------------+--------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | page_restrictions | 0 | PRIMARY | 1 | pr_id | A | 0 | NULL | NULL | | BTREE | | | | page_restrictions | 0 | pr_pagetype | 1 | pr_page | A | 0 | NULL | NULL | | BTREE | | | | page_restrictions | 0 | pr_pagetype | 2 | pr_type | A | 0 | NULL | NULL | | BTREE | | | | page_restrictions | 1 | pr_typelevel | 1 | pr_type | A | 0 | NULL | NULL | | BTREE | | | | page_restrictions | 1 | pr_typelevel | 2 | pr_level | A | 0 | NULL | NULL | | BTREE | | | | page_restrictions | 1 | pr_level | 1 | pr_level | A | 0 | NULL | NULL | | BTREE | | | | page_restrictions | 1 | pr_cascade | 1 | pr_cascade | A | 0 | NULL | NULL | | BTREE | | | +-------------------+------------+--------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+