有没有办法为数字字段设置SQL约束,最小值应为1234,最大值应为4523?
答案 0 :(得分:48)
the check
constraint的SQL Server语法:
create table numbers (
number int not null
check(number >= 1234 and number <= 4523),
...
)
create table numbers (
number int not null,
check(number >= 1234 and number <= 4523),
...
)
create table numbers (
number int not null,
constraint number_range_check
check(number >= 1234 and number <= 4523),
...
)
答案 1 :(得分:12)
CREATE TABLE WhatEver
(
...
NumericField INTEGER NOT NULL CHECK(NumericField BETWEEN 1234 AND 4523),
...
);
请注意,'BETWEEN AND'提供的范围包括引用的限制值。
答案 2 :(得分:1)
如果您使用的是SQL Server,则需要使用如下的CHECK约束:
CREATE TABLE foo (
someint INT NOT NULL CHECK (someint >= 1234 AND someint <= 4523)
)
答案 3 :(得分:0)
如果您通过SQL Server Management Studio使用SQL Server,添加Check Constraint的最方便的方法是右键单击树视图中的Constraints文件夹(Object Explorer),然后从弹出菜单中选择新约束。
使用名为CK_tableName *
的新空约束弹出Check Constraint窗口您可以编辑此类建议名称,并在“表达式”字段中插入检查约束的代码。
然后新的约束出现在对象资源管理器中的Constraint文件夹中(在您选择文件夹并点击刷新图标之后),您可以右键单击它并从弹出菜单中选择修改。
答案 4 :(得分:0)
仅供参考
当您需要一系列值的约束时:
{
"error": {
"code": "BAD_REQUEST_ERROR",
"description": "order_id, payment_id, status is/are not required and should not be sent"
}
}