加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 尝试从链接服务器中选择的灾难性故障

发布时间:2020-12-12 08:52:31 所属栏目:MsSql教程 来源:网络整理
导读:我从SQL SERVER 2012创建了一个链接oledb / odbc连接到Pervasive SQL: USE [master]GO/****** Object: LinkedServer [KSLAP208] Script Date: 2/8/2013 10:38:55 AM ******/EXEC master.dbo.sp_addlinkedserver @server = N'KSLAP208',@srvproduct=N'Pervasi
我从SQL SERVER 2012创建了一个链接oledb / odbc连接到Pervasive SQL:
USE [master]
GO

/****** Object:  LinkedServer [KSLAP208]    Script Date: 2/8/2013 10:38:55 AM ******/
EXEC master.dbo.sp_addlinkedserver @server = N'KSLAP208',@srvproduct=N'Pervasive ODBC Interface',@provider=N'MSDASQL',@datasrc=N'C003',@location=N'localhost'
 /* For security reasons the linked server remote logins password is changed with ######## */
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'KSLAP208',@useself=N'False',@locallogin=NULL,@rmtuser=NULL,@rmtpassword=NULL

GO

EXEC master.dbo.sp_serveroption @server=N'KSLAP208',@optname=N'collation compatible',@optvalue=N'false'
GO

EXEC master.dbo.sp_serveroption @server=N'KSLAP208',@optname=N'data access',@optvalue=N'true'
GO

EXEC master.dbo.sp_serveroption @server=N'KSLAP208',@optname=N'dist',@optname=N'pub',@optname=N'rpc',@optname=N'rpc out',@optname=N'sub',@optname=N'connect timeout',@optvalue=N'0'
GO

EXEC master.dbo.sp_serveroption @server=N'KSLAP208',@optname=N'collation name',@optvalue=null
GO

EXEC master.dbo.sp_serveroption @server=N'KSLAP208',@optname=N'lazy schema validation',@optname=N'query timeout',@optname=N'use remote collation',@optname=N'remote proc transaction promotion',@optvalue=N'true'
GO

测试连接成功.

但是,当我尝试从数据库中选择时:

select * from [KSLAP208].[C003]..PA_Profile_BASE_1119

我不明白地得到返回的字段名称,然后立即得到这个错误:

Msg 7399,Level 16,State 1,Line 1
The OLE DB provider "MSDASQL" for linked server "KSLAP208" reported an error. The provider reported an unexpected catastrophic failure.
Msg 7330,State 2,Line 1
Cannot fetch a row from OLE DB provider "MSDASQL" for linked server "KSLAP208".

我究竟做错了什么?为什么我不能选择?我可以看到linnked服务器上的所有数据库和表.

如果我选择少量的数据选择field1,field2它的工作没有问题.

解决方法

我想我记得当我创建一个postgresql链接服务器时,这是一个问题.我想您可能需要重新创建链接的服务器,这个设置为false(或者只是在链接的服务器属性 – >服务器选项中更改它):
EXEC master.dbo.sp_serveroption @server=N'KSLAP208',@optvalue=N'false'

另外,尝试使用OPENQUERY运行这个链接

SELECT * 
FROM OPENQUERY(KSLAP208,'SELECT * FROM PA_Profile_BASE_1119');

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读