写了个远程数据库同步的小程序;
写到下面代码的时候:
exec sp_configure 'show advanced options',1
go
reconfigure
go
exec sp_configure 'Ad Hoc Distributed Queries',1
go
reconfigure
go
use MonitorProject
go
insert Into OpenDataSource
('SQLOLEDB',
'Data Source=HHH-PC\SQLEXPRESS;
Initial Catalog=MonitorProject;
Integrated Security=True;
Persist Security Info=False').MonitorProject.dbo.ProjectInfo
select * From ProjectInfo where [ProjectName] ='Test'就有错误,但我有找不出错误在哪里;
在前面我还有过opendatasource能用的,不知道为什么现在不能用了,本地和远程的sql实例都在本机上...错误提示:配置选项 'show advanced options' 已从 1 更改为 1。请运行 RECONFIGURE 语句进行安装。
配置选项 'Ad Hoc Distributed Queries' 已从 1 更改为 1。请运行 RECONFIGURE 语句进行安装。
消息 7303,级别 16,状态 1,第 1 行
无法初始化链接服务器 "(null)" 的 OLE DB 访问接口 "SQLNCLI10" 的数据源对象。
写到下面代码的时候:
exec sp_configure 'show advanced options',1
go
reconfigure
go
exec sp_configure 'Ad Hoc Distributed Queries',1
go
reconfigure
go
use MonitorProject
go
insert Into OpenDataSource
('SQLOLEDB',
'Data Source=HHH-PC\SQLEXPRESS;
Initial Catalog=MonitorProject;
Integrated Security=True;
Persist Security Info=False').MonitorProject.dbo.ProjectInfo
select * From ProjectInfo where [ProjectName] ='Test'就有错误,但我有找不出错误在哪里;
在前面我还有过opendatasource能用的,不知道为什么现在不能用了,本地和远程的sql实例都在本机上...错误提示:配置选项 'show advanced options' 已从 1 更改为 1。请运行 RECONFIGURE 语句进行安装。
配置选项 'Ad Hoc Distributed Queries' 已从 1 更改为 1。请运行 RECONFIGURE 语句进行安装。
消息 7303,级别 16,状态 1,第 1 行
无法初始化链接服务器 "(null)" 的 OLE DB 访问接口 "SQLNCLI10" 的数据源对象。
添加一个 DWORD 值 TurnOffRpcSecurity,值数据为 1。
2、重启MS DTC服务。
3、打开“管理工具”的“组件服务”。
a. 浏览至"启动管理工具"。
b. 选择"组件服务"。
c. 展开"组件服务"树,然后展开"我的电脑"。
d. 右键单击"我的电脑",然后选择"属性"。
在 MSDTC 选项卡中,确保选中了下列选项:
网络 DTC 访问
网络管理
网络事务
XA 事务
另外,"DTC 登录帐户"一定要设置为"NT Authority\NetworkService"。
4、重启MS DTC服务。
5、再次运行 regedt32,浏览至 HKEY_LOCAL_MACHINE\Software\Microsoft\MSDTC,然后删除 TurnOffRpcSecurity 项。在查看一下sp_serveroption命令有鏈接服務器的選項說明
先试试这个,看有没有返回结果集:
select * from OpenDataSource
('SQLOLEDB.1',
'Data Source=HHH-PC\SQLEXPRESS;
Initial Catalog=MonitorProject;
Integrated Security=True;
Persist Security Info=False').MonitorProject.dbo.ProjectInfo
在 MSDTC 选项卡中,确保选中了下列选项:
这一步:
只有默认本地协调器,(我是win7的)
'SQLOLEDB',
'Data Source=HHH-PC\SQLEXPRESS;User ID=sa;Password=123'
).MonitorProject.dbo.ProjectInfo
Select * From ProjectInfo where [ProjectName] ='Test'威慑么这样就没有错呢