小编DAC*_*ACN的帖子

SQL数据库中的约束

我需要在T-SQL中有一个表,它具有以下结构

KEY     Various_Columns       Flag
 1          row 1              F
 2          row_2              F
 3          row_3              T
 4          row_4              F
Run Code Online (Sandbox Code Playgroud)

没有行,或者最多只有一行可以使Flag值具有值T.我的开发人员声称这可以通过在表上放置检查约束来实现.

问题:

  1. 是否可以在数据库级别对数据库本身(即行间约束)进行此类约束,而不是在更新或插入行的业务规则中
  2. 这样的桌子是否正常?
  3. 或者正常形式需要移除Flag列,而是(比方说)有另一个简单的表或变量,其中包含具有Flag = T的行的值,即在上面的情况下row = 3.

sql t-sql sql-server-2005 check-constraints

3
推荐指数
1
解决办法
360
查看次数

标签 统计

check-constraints ×1

sql ×1

sql-server-2005 ×1

t-sql ×1