SQL Server添加列约束以将数据限制为-1到1 [英] SQL Server add a column constraint to limit data to -1 to 1

查看:308
本文介绍了SQL Server添加列约束以将数据限制为-1到1的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想限制SQL Server的十进制列,只允许-1,0,1作为有效值。

I want to constrain a SQL Server decimal column to only allow -1,0,1 as valid values.

您可以向我显示添加此类约束的SQL语法。 (我想知道如何在CREATE TABLE语句和/或ALTER TABLE ADD CONSTRAINT中这样做。)

Can you show me the SQL syntax for adding such a constraint. (I would like to know how to do it in both the CREATE TABLE statement and/or the ALTER TABLE ADD CONSTRAINT).

或者这只能在触发器中完成?

Or can this only be accomplished in a trigger?

推荐答案

CREATE TABLE foo (
    bar int NOT NULL CONSTRAINT CK_foo_bar CHECK (bar IN (-1, 0, 1))
)

>

or

ALTER TABLE foo WITH CHECK ADD --added WITH CHECK
   CONSTRAINT CK_foo_bar CHECK (bar IN (-1, 0, 1)) --not needed "FOR bar"

编辑:thoughts ...

thoughts...


  • 为什么要限制小数?您可以将其更改为smallint还是int?

  • NULL是什么?您可能需要根据需要更改我的代码。

这篇关于SQL Server添加列约束以将数据限制为-1到1的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆