首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在约束中使用collate?

如何在约束中使用collate?
EN

Stack Overflow用户
提问于 2016-07-07 17:41:24
回答 2查看 1K关注 0票数 0

我需要添加一个约束,将大写的特定样本数据输入到名为State的列中。这就是我尝试过的。但它会返回错误消息“在关键字‘COLLATE’附近语法不正确”。

代码语言:javascript
复制
ALTER TABLE [Client]
ADD CONSTRAINT [client_statecheck]
CHECK COLLATE  SQL_Latin1_General_CP1_CS_AS (State in('QLD', 'NSW', 'VIC','TAS', 'SA', 'WA', 'NT', 'ACT' ));
EN

回答 2

Stack Overflow用户

发布于 2016-07-07 17:51:35

我认为您需要在列级别实现排序,而不是在添加约束时。

代码语言:javascript
复制
   ALTER TABLE Client ALTER COLUMN State 
                    varchar(10) COLLATE SQL_Latin1_General_CP1_CS_AS NOT NULL;
    ALTER TABLE [Client]
    ADD CONSTRAINT [client_statecheck]
    CHECK (State in('QLD', 'NSW', 'VIC','TAS', 'SA', 'WA', 'NT', 'ACT' ));
票数 0
EN

Stack Overflow用户

发布于 2016-07-07 18:22:03

COLLATE不适用于IN...

检查下面的链接有更多的信息和解决方案。

http://www.sqlservercentral.com/Forums/Topic594604-338-1.aspx

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38242226

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档