テーブルに値を挿入するときに、列に無効なデータが入らないようにする方法はありますか?
exテーブル - アイテム
Itno - pk
Itdesc
salesprice - Acceptable values should > 150 and < 10500
タイ
テーブルに値を挿入するときに、列に無効なデータが入らないようにする方法はありますか?
exテーブル - アイテム
Itno - pk
Itdesc
salesprice - Acceptable values should > 150 and < 10500
タイ
次の構文は、MySQL / SQL Server / Oracle / MS Access に適用されます。
CREATE TABLE mytable
(
Itno int NOT NULL,
Itdesc varchar(255) NOT NULL,
salesprice int,
CONSTRAINT chk_salesprice CHECK (salesprice >150 AND salesprice < 10500)
)
ユーザー定義関数を Check Constraint と共に使用して、動的な値を検証することもできます。
@Romilの回答に加えて、ほとんどのRDBMSのサポートトリガーは、コミットの前後にデータを検証できます。
一般にCHECK
制約が推奨されますが、場合によっては(特に、データを可変標準に対して評価する必要がある場合)、トリガーがそれを行う唯一の方法です。