アサーション(表明)とは?あさーしょん
アサーション(表明)とは、関係データベースにおけるアサーション(SQLのCREATE ASSERTION)は、特定の表に属さず、データベース全体に対して常に成立すべき条件を宣言する制約。複数の表をまたぐ条件や集計値の条件を書けるため、1行だけを見るCHECK制約(検査制約)では表せない業務ルールを、手続きを書かずに宣言できる。
最終更新:2026-10-07
高度試験の午前Iを最短で暗記する →背景
同じ業務ルールをアプリケーション側に書くと、別の画面や夜間バッチなど入口が増えるたびに書き漏らしが生まれ、そこから不正なデータが入る。入口の数に依存せず正しさを保つには、DBMS(データベース管理システム)自身に条件を持たせ、どの経路の更新でも同じ判定をさせるしかない。
具体例
「どの部門も在籍者は50人以下」「受注明細の金額合計と受注ヘッダの合計額が一致する」のように、2つ以上の表を見ないと判定できない条件が典型。ただし実装しているDBMSはほとんど無く、実務ではトリガで代替する。
試験での引っ掛け
同じ「アサーション」でも、プログラミングのassert(表明)は実行時に前提条件を確かめる文であり、DBの制約とは別物。監査分野の監査要点(アサーション)も別で、経営者が財務諸表で主張している事項(実在性・網羅性など)を指す。設問がどの分野の話かで判断する。DB内ではCHECK制約との違いが問われ、表の定義に属するか独立したオブジェクトかが分かれ目になる。
関連用語
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。