Manual:Coding conventions/Database/ja

このページでは、MediaWiki コードベースの、データベースで使用するために作成されたファイル内で使用されるコーディング規約を説明します. データベースを含むすべてのプログラム言語に適用される全般的な規約も参照してください. コミットの確認に役立つ短いチェックリストが必要な場合は、 を使用してみてください.

MySQL/MariaDB
Use UPPERCASE for MySQL/MariaDB keywords, and lowercase for things like types. Do not specify the lengths of numeric types, but do for and  types. Use for all timestamps, and parse them to the standard format using ; do not use the  field type.

Make sure to include the comment immediately before any table name; this will be replaced with the wiki's database prefix if necessary, and omitting it will cause breakage. Similarly, include the comment after any table declaration, and  immediately before any index names.

Create indices as separate statements, do not include them in the table creation query; the separate syntax is clearer and makes it easier to see the difference between unique and non-unique indices. Don't create indices with, always use instead.

All new tables should have a, preferably a single ID.

SQLite
SQLite uses the same SQL as MySQL/MariaDB, so the SQL must be compatible with both. Usually, this can be accomplished with a few simple rules, given at Manual:Database access.

Table naming

 * Table names should be singular nouns:,  ,  , etc. There are some historical exceptions:  ,  …
 * Column names are given a prefix derived from the table name: the name itself if it's short, or an abbreviation:

Changing the schema
See Development policy, especially https://www.mediawiki.org/w/index.php?title=Development_policy&diff=prev&oldid=537762.

When updating the schema for an extension, it is advisable to both update the original schema file and create a patch file for those updating from a previous version.