当前位置: 首页 > 面试题库 >

根据SQL中的值添加唯一约束

拓拔野
2023-03-14
问题内容

我有一种情况,我只想在其他字段中有特定值的情况下才添加唯一约束(例如表为ID CategoryName名称值Value CategoryID)

约束将在ID,CategoryName和Name上,只有CategoryID为0

是否有可能?


问题答案:
CREATE UNIQUE NONCLUSTERED INDEX [UQ_ID_CategoryName_Name, CategoryName, Name] ON TableName 
(
    ID, CategoryName, Name
)
WHERE (CategoryID = 0)


 类似资料:
  • 我正忙着创建VB. Net Windows应用程序。我正在使用带有名为skedulering的表的microsoft sql服务器数据库。我正在尝试使用基于另一列(即Kode)的唯一值更新一列(即Groep)。此值接受Kode值的前三个字符并向其添加一个整数。我认为我的意思最好用以下内容来解释: 所有红色边框行都具有相同的Groep值。有人能帮我创建sql语句吗? 问候

  • 问题内容: 我有一个电子邮件列,我想保持唯一性。但我也希望它接受空值。这样我的数据库可以有2个空电子邮件吗? 问题答案: 是的,MySQL在具有唯一约束的列中允许多个NULL。 结果: 并非对于所有数据库都是如此。 例如,SQL Server 2005和更早版本仅在具有唯一约束的列中允许单个NULL值。

  • 我有一张桌子,不知怎的,同一个人进了我的桌子两次。现在,主键只是一个自动编号,但还有两个字段存在,我想强制它们是唯一的。 例如,这些字段是: 我只想要一张带有唯一PersonNumber和Active=1的唱片 (因此这两个字段的组合必须是唯一的) SQL server中现有表的最佳方式是什么?我可以这样做,如果其他任何人使用与现有值相同的值进行插入,则插入失败,因此我不必在应用程序代码中担心这一

  • 我有一个数据集 是否有任何方法可以确保,如果不同的的下一个值小于中的值,那么它应该在 列中执行加法。 下面是我期待的结果 所以基本上我寻求一个解决方案,对于每个唯一的< code>field_pointpath,如果它遇到一个小于前一个值的值,那么它应该将前一个值与下一个值相加。 if <代码>值[i 1]

  • 问题内容: 如何在Visual Studio中直观地在varchar(max)字段上创建唯一约束。 问题是当我尝试时: 管理索引和键 >添加>列 我只能选择bigint列,而不能选择任何varchar(max)列。 我是否可能必须使用 检查约束 ? 如果是,请在表达式中添加什么? Thnx的信息 问题答案: 您不能在列上设置唯一约束(最多2 GB的文本!)。您根本无法。 唯一性约束由后台中的唯一索

  • 下面的代码检查ArrayList中是否存在id 数组列表结果很好,但映射值仅返回true。请帮助我如何根据条件添加k、v以映射,以便映射结果如下所示[{Access=false},{Access=true},{Access=false},{Access=false},{Access=true}]。