SQL2000创建临时表显示乱码,急

winstonbonaparte 2010-10-29 10:22:54
create table #S(MCH varchar(50))
go
insert into #S
select '简体中文'
union
select '默认语言'
go
select * from #S
go
drop table #S
--就这样一段临时表的代码,查出来的结果都全是????

昨天终于把SQL装上去后,早上过来的时候就发现查询报表的时候出现‘无法解决equal to操作的排序规则冲突’的问题,但以前从来没有碰到过的,而且不是所有报表都报这个错。结果发现就是上面的这个问题。
我已经在SQL和系统里把默认语言改成简体中文了,还需要怎么改才能解决啊。急的
...全文
189 11 点赞 打赏 收藏 举报
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
lovezx1028 2010-10-29


[code=SQL]
create #S(MCH varchar(50))
go
insert into #S
select N'简体中文'
union
select N'默认语言'
go
select * from #S
go
drop table #S

[/code]
  • 打赏
  • 举报
回复
cjzm83 2010-10-29
[Quote=引用 6 楼 winstonbonaparte 的回复:]
表中的字段类型也是varchar,我如果不用临时表,也不会显示乱码的。这是怎么回事
[/Quote]

因为你临时表的排序规则跟安装时选的排序规则是一样的
  • 打赏
  • 举报
回复
dawugui 2010-10-29
[Quote=引用 5 楼 winstonbonaparte 的回复:]
能不能不要用nvarchar,虽然这样是可以正常显示了。但我很多报表上用的都是varchar,我不太可能一个一个去找哪些是乱码,然后再去改,太多了[/Quote]
这估计和你安装SQL SERVER时的选项或字符集的设置有关,具体的情况就比较难找了。

不过,用上nvarchar后,插入,更新,查询前再加N是肯定没有问题的。
  • 打赏
  • 举报
回复
luoyefeng1022 2010-10-29
应该是SQL 哪里没有设置好吧!
我测试nvchar 和varchar 都没问题啊!
你可以 select @@language 和查看系统设置的排序规则
  • 打赏
  • 举报
回复
z184931481 2010-10-29
或许你的SQL安装的时候定义中文编码选错了?
  • 打赏
  • 举报
回复
winstonbonaparte 2010-10-29
表中的字段类型也是varchar,我如果不用临时表,也不会显示乱码的。这是怎么回事
  • 打赏
  • 举报
回复
winstonbonaparte 2010-10-29
[Quote=引用 1 楼 dawugui 的回复:]

create table #S(MCH nvarchar(50))
go
insert into #S
select N'简体中文'
union
select N'默认语言'
go
select * from #S
go
drop table #S
[/Quote]
能不能不要用nvarchar,虽然这样是可以正常显示了。但我很多报表上用的都是varchar,我不太可能一个一个去找哪些是乱码,然后再去改,太多了
  • 打赏
  • 举报
回复
z184931481 2010-10-29
[Quote=引用楼主 winstonbonaparte 的回复:]
SQL code
create table #S(MCH varchar(50))
go
insert into #S
select '简体中文'
union
select '默认语言'
go
select * from #S
go
drop table #S
--就这样一段临时表的代码,查出来的结果都全是????


昨天终于把SQL装上去后,早上过来的时候就发现查……
[/Quote]
学习了
  • 打赏
  • 举报
回复
SQLCenter 2010-10-29
create table #S(MCH nvarchar(50))
go
insert into #S
select N'简体中文'
union
select N'默认语言'
go
select * from #S
go
drop table #S
  • 打赏
  • 举报
回复
dawugui 2010-10-29
create table #S(MCH nvarchar(50))
go
insert into #S
select N'简体中文'
union
select N'默认语言'
go
select * from #S
go
drop table #S

/*

MCH
--------------------------------------------------
简体中文
默认语言

(所影响的行数为 2 行)

*/
  • 打赏
  • 举报
回复
dawugui 2010-10-29
create table #S(MCH nvarchar(50))
go
insert into #S
select N'简体中文'
union
select N'默认语言'
go
select * from #S
go
drop table #S
  • 打赏
  • 举报
回复
相关推荐
发帖
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
帖子事件
创建了帖子
2010-10-29 10:22
社区公告
暂无公告