问题假设:
我在SQL Server中有一个表,结构如下;
Column 1: Id | INT | NOT NULL | Auto-Identity
Column 2: Name | VARCHAR(20) | NOT NULL
Column 3: Number | SMALLINT | NOT NULL
解决方案:
我想要的是,无论何时在列中输入某个值,都应该在数据库级别本身根据某些检查对其进行验证或确认?
例子:
第 3 列 Number
"应该只允许:
- 数值
- 长度为 10
- 值应以数字 4 开头
谁能建议在数据库级别实现这个的最佳方法?
最佳答案
使用 CHECK 约束 - http://msdn.microsoft.com/en-us/library/ms188258.aspx
ALTER TABLE table
ADD CONSTRAINT tenDigitsStartsWithFour CHECK
(Col3 BETWEEN 4000000000 AND 4999999999) -- Col3 must be a BIGINT, thanks Mikael
关于sql - 如何对 SQL 表列进行验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6223557/