用分布式查询读入的数据是一个字符集
而用企业管理器导入的数据是另一个字符集,如何指定导入以后的字符集呢?
????
if exists(select * from sysobjects where name=‘注册信息’)
drop table 注册信息
go
select *
into 注册信息
from openrowset(
‘microsoft.jet.oledb.4.0’
,‘excel 8.0;database=d:\操作题02\电子注册信息.xls’
,'select * from [注册信息]′)go−−查看−−select∗from注册信息]'
)
go
--查看
-- select * from 注册信息]′)go−−查看−−select∗from注册信息
– select * from 学生
–第02步:查询对比,写入数据到新表
select
学生.学号
,学生.姓名 as 学生表姓名
,注册信息.姓名as电子注册姓名−−into学生注册信息对比from学生join注册信息.姓名 as 电子注册姓名
--into 学生注册信息对比
from
学生 join 注册信息.姓名as电子注册姓名−−into学生注册信息对比from学生join注册信息 on 学生.学号=注册信息.学号where学生.姓名<>注册信息.学号
where
学生.姓名<>注册信息.学号where学生.姓名<>注册信息.姓名
–出错:
– 服务器: 消息 446,级别 16,状态 9,行 1
– 无法解决 not equal to 操作的排序规则冲突。
–sp_help 注册信息$
– 学号 nvarchar no 510 yes (n/a) (n/a) Chinese_PRC_BIN
– 姓名 nvarchar no 510 yes (n/a) (n/a) Chinese_PRC_BIN
– 性别 nvarchar no 510 yes (n/a) (n/a) Chinese_PRC_BIN
–sp_help 学生
– 学号 char no 10 no no no Chinese_PRC_CI_AS
– 姓名 char no 8 no no no Chinese_PRC_CI_AS
–查看系统支持的排序规则:
select * from ::fn_helpcollations()
mssqlserer2000--做操作题导入数据以后查询碰到的问题讨论-字符集排序规则不一致
博客围绕数据库操作展开,提出用分布式查询和企业管理器导入数据时字符集不同,询问如何指定导入后的字符集。还展示了从 Excel 导入数据到新表的代码,以及查询对比写入新表时出现排序规则冲突的问题,并给出查看系统支持排序规则的方法。

被折叠的 条评论
为什么被折叠?



