cac*_*upt 4 sql-server primary-key unique-key unique-constraint sql-server-2008
是否可以将 varchar 列作为具有“a”和“a”等值的主键,在 MS SQL Server 2008 中总是给出此错误“违反主键约束”。在 Oracle 中不会给出任何错误。顺便说一句,我没有以这种方式实现,我只是尝试将数据从 oracle 迁移到 sql server。
问候
小智 5
SQL-92 标准规定,出于字符串比较的目的,在比较之前将字符串填充为相同的长度:通常填充字符是空格。
因此 'a' 和 'a ' 比较 EQUAL,这违反了 PK 约束。 http://support.microsoft.com/kb/316626
我找不到任何迹象表明这种行为从那时起发生了变化。
您可能会使用 varbinary 而不是 varchar,但这可能也达不到您想要的效果。
| 归档时间: | 
 | 
| 查看次数: | 5114 次 | 
| 最近记录: |