阿里云
阿里云多端小程序中小企业获客首选
发表主题 回复主题
  • 1001阅读
  • 0回复

[RDS 版]技术运维问题-SQL Server使用-RDS for SQL Server 字符集说明、修改及使用区别

级别: 论坛版主
发帖
4132
云币
8506


1. RDS for SQL Server 控制台支持的字符集


分别为:
Chinese_PRC_CI_ASSQL_Latin1_General_CP1_CI_ASChinese_PRC_BIN
Chinese_PRC_CS_ASSQL_Latin1_General_CP1_CS_AS

字符集后缀的说明:
_CI不分区大小写
_CS区分大写
_BIN按二进制排序,区分大小写


2. 修改表的字符集


RDS for SQL Server 不支持修改数据库级字符集。
支持修改表中列的字符集。
修改sql语句如下:

alter table 表名 alter column 列名 列数据类型 collate 字符集

3. 字符集的使用及修改示例



3.1 连接到 RDS for SQL Server



3.2 新建查询


创建如下两张表 SQL 语句如图:
: [/url]
上述就是字符集不同导致的sql结果不同。

3.4 查询测试


使用

select * from test1 a, test2 b where a.name=b.name
执行发现报错,如图:

因为列的字符集不同,导致关联失败。

3.5 使用如下语句修改列的字符集
  1. alter table test2 alter column name varchar(10) collate Chinese_PRC_CI_AS







修改test2表,使不区分大小写,执行结果如图:

执行
  1. select * from test1 a, test2 b where a.name=b.name





发现成功了,如图:

修改字符集后关联成功。
另外,也可在关联时指定字符集关联,SQL 语句如下:



  1. select * from test1 a ,test2 b where a.name=b.name collate Chinese_PRC_CI_AS

如问题还未解决,请联系[url=https://selfservice.console.aliyun.com/ticket/createIndex.htm]售后技术支持。

发表主题 回复主题
« 返回列表上一主题下一主题

限100 字节
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
 
验证问题: 78 + 8 = ?
上一个 下一个
      ×
      全新阿里云开发者社区, 去探索开发者的新世界吧!
      一站式的体验,更多的精彩!
      通过下面领域大门,一起探索新的技术世界吧~ (点击图标进入)