问题标签 [unique-constraint]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
357 浏览

mysql - 如何在 mysql 中为可以为空的列设置唯一性约束?

我知道在 MySQL 中,UNIQUE 约束不会将 NULL 值视为相等。因此,如果我对 ColumnX 有一个唯一约束,那么两个单独的行对于 ColumnX 可以具有 NULL 值,这不会违反约束。我该如何解决这个问题?我不能只是将值设置为我可以标记的任意常量,因为在我的情况下 ColumnX 实际上是另一个表的外键。我在这里有什么选择?

请注意,该表还有一个“id”列作为其主键。由于我使用的是 Ruby on Rails,因此将此 id 列保持为主键很重要。

注意2:实际上,我的唯一键包含许多列,其中一些必须为空,因为它们是外键,并且其中只有一个应该是非空的。我实际上想要做的是“模拟”多态关系,以保持数据库中的引用完整性,但使用在接受的解决方案中的第一个选项中概述的技术来解决这里提出的问题:为什么你不能拥有多态关联中的外键?

0 投票
1 回答
543 浏览

java - 为 Db4oEmbedded EmbeddedConfiguration 设置唯一键约束

我想为 Db4oEmbedded EmbeddedConfiguration 设置唯一键约束。

这是我的代码:

最后一行抛出异常。我不知道为什么。我正在为 Java 运行 Android SDK 1.5 和 db4o 7.12。请多多指教。谢谢!

0 投票
7 回答
501 浏览

sql-server-2005 - SQL (SQL Server) 中的唯一约束

为什么数据库中需要 UNIQUE 约束?

你能提供任何例子吗?

默认情况下,主键是唯一的......可以理解,因为它们在其他表中被称为外键......需要关系来连接它们以用于 rdbms 平台......

但为什么要将其他列称为 UNIQUE,这样做有什么好处?)

0 投票
2 回答
290 浏览

sql-server - 使用 CTE 在联结表中合并值并删除重复项

我有以下架构:

数据的用户想要合并 Segments.Names,并给了我一个映射到新 Segment.Names 的当前 Segment.Names 列表(所有这些当前都存在)。

所以现在我在一个临时表中有这个列表,其中包含要映射到的 currentID 和 newID。

我想做的是根据这张地图更新 SegmentsParcels 中的 SegmentID。我可以使用以下语句:

但这会创建一些重复我对 SegmentParcels 中的 ParcelID 和 SegmentID 有唯一约束。

解决此问题的最佳方法是什么?我考虑删除约束,然后处理删除重复项(我曾经做过一次并且可能会再次这样做),但我希望有一种更简单的方法。

0 投票
3 回答
318 浏览

sql-server - 如何在 sql server 中强制执行此约束

我有一个名为 city 的表和一个名为 city_city 的表。city_city 关联两个城市记录,因此它有一个 fromcity_id 和一个 tocity_id。我可以通过唯一键强制 fromcity_id 和 tocity_id 的唯一性,但是如何强制唯一性以便在 fromcity_id 和 tocity_id 颠倒时无法插入记录。

例如,以下记录在概念上是相同的:

0 投票
5 回答
110947 浏览

sqlite - SQLite 表约束 - 在多个列上唯一

我可以在 SQLite 网站上找到语法“图表”,但没有示例,我的代码崩溃了。我有其他表在单列上具有唯一约束,但我想在两列上向表中添加约束。这就是我所拥有的导致 SQLiteException 消息“语法错误”的原因。

我这样做是基于以下几点:

表约束

需要明确的是,我提供的链接上的文档说CONTSTRAINT name应该在我的约束定义之前。

不过,可能导致解决方案的事情是,我带括号的列定义之后的任何内容都是调试器所抱怨的。

如果我把

错误在“CONSTRAINT”附近:语法错误

如果我把

错误接近“唯一”:语法错误

0 投票
1 回答
786 浏览

ruby-on-rails - Rails - validates_uniqueness_of 模型字段与 :scope 的倒数

我正在尝试通过一次捕获来验证模型中某些字段的唯一性 - 如果记录具有某种共享关系,则不应引发错误。举例来说,这就是我的意思:

如果我使用validates_uniqueness_of :comments, :scope => :category_id,它将产生与我正在尝试做的完全相反的效果。有什么简单的方法可以做到这一点吗?谢谢。

0 投票
3 回答
27071 浏览

hibernate - 如何在hbm中做多列UniqueConstraint?

处理一些遗留的休眠代码。

如何使用 hbm.xml(休眠映射文件)而不是注释来执行以下操作?

0 投票
2 回答
3342 浏览

php - 由于唯一约束,PHP MySQL INSERT 失败

在插入时,我正在捕获唯一约束 mysql_errno() 1062。

这工作正常,但我想找到现有的行来重新设置或修改它。

是否有方法在插入失败时获取行 ID?我尝试了 mysql_insert_id() 但意识到这只会返回我正在插入(或未能插入)的行,因此我得到 0。

除了发出另一个 mysql_query 并简单地对重复值执行选择之外,别无选择?

我只是想确保没有更好、更快、更经济的方法来做到这一点。

0 投票
3 回答
13130 浏览

sql - SQL Server 唯一性约束问题

如何在视觉工作室中创建对 varchar(max) 字段的唯一约束。

问题是当我尝试它时:

管理索引和键 > 添加 > 列

我只能选择 bigint 列,但不能选择任何 varchar(max) 列。

我可能必须使用检查约束吗?

如果是,在表达式中添加什么?

谢谢你的信息