外部キーの制約

www.altova.com このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  データベースへの接続 > SQLite 接続の設定 >

外部キーの制約

DiffDog  から既存の SQLite データベースに接続する場合、デフォルトで、外部キーの制約 が有効化されます。外部キーの制約はデータベース内のデータの整合性を保持する手助けを行います。例えば、外部キーが有効化されていると、他のテーブル内に依存関係がある場合、テーブルからレコードを削除することができません。

 

特定の場合、一時的にこの振る舞いをオーバーライドし、外部キーを無効化する必要がある場合があります。例えば、データ検証エラー無しにデータの列を更新、または、挿入する場合など。SQLite データベースに接続する前に、明示的に外部キーを無効化するには、データベース接続ウィザードの 「外部キーの無効化」 オプションを選択します。

dbc_sqlite_existing_con2

"SQLite への接続" ウィザードページ

外部キーが無効化されていると、検証チェックのためチェックすることのできなかったデータに対して操作をおこなうことができます。同時に、データベース内に不正確なデータを入れてしまう危険性、または、「無所属の」行を作成してします可能性が出てきます。 (「無所属の」行の例は、「address」テーブルにリンクされていない「person」テーブル内のアドレスなどが挙げられます。これは、個人名が削除されているにもかかわらず、この個人に関連した住所が削除されていない場合などにこのような行が発生します。)


(C) 2019 Altova GmbH