SQL_Latin1_General_CP1_CI_AS 的数据库如何判断全角半角?

常恨村姑无觅处 2007-01-25 03:47:16
数据库的排序规则为 SQL_Latin1_General_CP1_CI_AS,
字段为 nvarchar(100),
如何判断是否含有全角内容?


select 1 where '03BHL01001(上海)'='03BHL01001(上海)'
  collate Chinese_PRC_CI_AS_WS

这种方法好像无效!


...全文
309 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
新建一个数据库,创建时指定排序规则为SQL_Latin1_General_CP1_CI_AS ,可以看到这个效果
  • 打赏
  • 举报
回复
select datalength('7'),len('7')
-----
都是1
  • 打赏
  • 举报
回复
To yczealot:
如果数据库排序规则是SQL_Latin1_General_CP1_CI_AS ,datalength('03BHL01001(上海)')和datalength('03BHL01001(上海)')是相等的
yczealot 2007-01-25
  • 打赏
  • 举报
回复
select datalength('7'),len('7')

一个是2,一个是1
yczealot 2007-01-25
  • 打赏
  • 举报
回复
select datalength('03BHL01001(上海)'),len('03BHL01001(上海)')

可以看出结果是不同的
  • 打赏
  • 举报
回复
如何判断出 '7' 和'7' ?
yczealot 2007-01-25
  • 打赏
  • 举报
回复
select 1 where datalength('03BHL01001(上海)')=datalength('03BHL01001(上海)')

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧