Sei*_*bar 37 sql t-sql sql-server constraints
如何在varchar区分大小写的字段(SQL Server 2005)上创建唯一约束?
目前我的约束如下:
alter table MyTable
add constraint UK_MyTable_MyUniqueKey unique nonclustered (MyCol)
Run Code Online (Sandbox Code Playgroud)
当我尝试插入以下两个值时,出现"违反UNIQUE KEY约束..."错误.
insert into MyTable (MyCol) values ('ABC')
insert into MyTable (MyCol) values ('abc') --causes a violation of UNIQUE KEY constraint 'UK_MyTable_MyUnqiueKey'
Run Code Online (Sandbox Code Playgroud)
我希望将两个不同用途的值作为unqiue处理.我想它将涉及以下代码,但我不知道它如何改变我的add constraint语法.
COLLATE SQL_Latin1_General_CP1_CS_AS
Run Code Online (Sandbox Code Playgroud)
Jas*_*yon 50
这会将列更改为区分大小写.我认为你的约束没有任何改变......
ALTER TABLE mytable
ALTER COLUMN mycolumn VARCHAR(10)
COLLATE SQL_Latin1_General_CP1_CS_AS
Run Code Online (Sandbox Code Playgroud)
由于此操作,此列上的任何选择或连接都将区分大小写.
| 归档时间: |
|
| 查看次数: |
27904 次 |
| 最近记录: |