数据库默认列

时间:2012-09-17 15:56:30

标签: database default

关于数据库结构的一个简单问题。 我必须管理多个角色,但只需要一个默认角色,即用户自动分配给。

如何在数据库中存储此默认容差?那样的东西?

ID     |   Name   | IsDefault
-----------------------------
1      |   Admin  | no
2      |   User   | yes

如果是这样,您如何检查只有一个角色被标记为默认角色?

由于

1 个答案:

答案 0 :(得分:1)

对于Oracle,您可以检查IsDefault列上的约束,因此它可以只是yesno。然后

CREATE UNIQUE INDEX IDXU_TABLE1_ISDEFAULT ON table1(CASE WHEN IsDefault ='yes' THEN IsDefault ELSE NULL END);