向表中插入值时,有什么方法可以避免将无效数据放入列中?
前表 - 项目
Itno - pk
Itdesc
salesprice - Acceptable values should > 150 and < 10500
泰
向表中插入值时,有什么方法可以避免将无效数据放入列中?
前表 - 项目
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)
)
您还可以使用带有检查约束的用户定义函数来验证动态值。
除了@Romil 的回答,大多数 RDBMS 的支持触发器可以在提交之前或之后验证数据。
通常,CHECK
约束是首选,但有时(尤其是在必须根据可变标准评估数据的情况下)触发器是唯一的方法。