仮想列
Db2データベースはバージョン8で、生成列という名前で仮想列をサポートする。
MariaDBはMySQLの分岐である。 バージョン5.2で仮想列が追加された。
仮想列の計算に使用できる式には、次の制限がある。
決定論的である必要がある。
定数値を返すことはできない。
ユーザー定義関数またはストアドプロシージャは使用できない。
他の仮想列は含められない。
サブクエリは利用できない。
永続化列にはインデックスを付けることができ、外部キーの一部にすることができるが、制約の適用に関するいくつかの小さな制限がある。
仮想化列は、これをサポートするストレージエンジンを使うテーブルでのみ使用できる。仮想化列をサポートしているストレージエンジンは次の通りである。
InnoDB
MyISAM
Aria
MRG_MyISAMテーブルは、永続化列を含むMyISAMテーブルに基づくことができる。ただし、対応するMRG_MyISAM列は通常の列として定義する必要がある。
CREATETABLEまたはALTERTABLEステートメントを使用して、仮想列を追加できる。仮想列の定義に使用される構文は次の通りである。
typeは、列のデータ型。
expressionは、各行の列の値を返すSQL式。
textはオプションの列コメント。