SQLiteConnector: getSchema()
データベースの定義情報を取得します。
この関数は非同期関数です。
構文
sqliteConnector.getSchema() => Promise<object>
返値: Promise<object>
データベースの定義情報を取得した際に履行される Promise です。
履行した際、データベース定義情報を表す object を与えます。このオブジェクトは以下のプロパティを持ちます。
-
tables:Array<object>テーブルの定義情報を表すオブジェクトの配列です。 それぞれのテーブル定義情報を表すオブジェクトは以下のプロパティを持ちます:
-
name:stringテーブルの名前です。
-
primaryKey:Array<string>主キーとして使用するカラム名の順序付きリストです。
-
columns:objectテーブルのカラムの定義情報をプロパティに持つオブジェクトです。 各プロパティ名にはカラム名が使用されます。
各カラムの定義情報は以下のプロパティを持つオブジェクトです:
-
type:stringカラムの型名です。
-
unique:booleanUNIQUE制約を持つかどうかです。trueならUNIQUE制約を持ち、falseなら持ちません。 -
nullable:booleanNULLを許容するかどうかです。trueなら許容し、falseなら許容しません(つまりNOT NULL制約を持ちます)。 -
defaultValue:stringまたはnumberカラムの既定値です。
レコードの挿入時、対応するカラムの値が欠損している場合にこの値が使用されます。
-
foreignKey:object外部キー制約を表すオブジェクトです。これは以下のプロパティを持ちます:
-
table:string外部キーの定義元として参照するテーブル名です。
-
to:string外部キーの定義元として参照するカラム名です。
-
onUpdate:stringON UPDATEアクションの種別です。値は以下のいずれかです(カッコ内は対応するSQLのキーワードです):
"set-null"(SET NULL)"set-default"(SET DEFAULT)"cascade"(CASCADE)"restrict"(RESTRICT)"no-action"(NO ACTION)
-
onDelete:stringON DELETEアクションの種別です。指定される値は
onUpdateと同様です。
-
-
-
例外
以下の例外は返値の Promise が棄却された際に発生します。
DBError- データベースの定義情報の取得に失敗した場合
解説
データベースの定義情報を取得します。