配置链接服务器
1. 别名配置
在SQL Server Configuration Manager 中配置以下内容:如下图:
别名:就像orcle中的别名,用于写SQL是form 语句中的 最前名的“from YX151.testdb1.dbo.agency_reg_tbl”
端口号:MS SQL SERVER 是1433;orcle 是 1521
服务器:IP或者是计算机名
协议:TCP/IP
2. 配置链的接服务器
USE master;
GO
EXEC sp_addlinkedserver
'YX151', --别名
N'SQL Server'
GO
EXEC sp_addlinkedsrvlogin 'YX151', 'false','zhc-tian/tiandehui', 'sa', '123'
EXEC sp_addlinkedsrvlogin 'YX151' (别名), 'false','zhc-tian/tiandehui'(本地登陆计算机名), 'sa'(登陆远程数据库用户名), '123'(登陆远程数据库用户名的密码)
案例:
select (agency_branch_no + REPLICATE('0',8-len(agency_no)) + agency_no ) as sales_no2,[name],
'',(agency_branch_no + REPLICATE('0',8-len(agency_no)) + agency_no ) as sales_no3,'',0
from YX151.testdb1.dbo.agency_reg_tbl
链接服务器'YX151' 的OLE DB 访问接口'SQLNCLI' 返回了对列'[YX151].[testdb1].[dbo].[agency_reg_tbl].name' 无效的数据。
1. Name有可能是字符集有问题varchr 与 nvarchar 的问题
解决办法:更改源数据库的字符集问题;cast(name as nvarchar)