用于链接服务器的SQL Server OPENROWSET OLE DB提供程序“MSDASQL”“(null)”

时间:2016-11-09 11:20:10

标签: sql-server openrowset

首先使用以下查询配置ad hoc分布式查询

void element(char a[], int d)

当我尝试执行上面的脚本然后得到错误

  

OLE DB提供程序“MSDASQL”用于链接服务器“(null)”返回的消息   “[Microsoft] [ODBC驱动程序管理器]未找到数据源名称,没有   默认驱动程序指定“。消息7303,级别16,状态1,行1不能   初始化OLE DB提供程序“MSDASQL”的数据源对象   链接服务器“(null)”。

如何解决它....请指导我。感谢

1 个答案:

答案 0 :(得分:0)

这个问题已经解决了。这是细节。

SELECT * FROM OPENROWSET ('Microsoft.ACE.OLEDB.12.0', 'Text;Database=C:\CSV; ', 'SELECT * FROM smdr.csv')

错误:Msg 7403,Level 16,State 1,Line 31 OLE DB提供程序“Microsoft.ACE.OLEDB.12.0”尚未注册。 FIX = INSTALL“AccessDatabaseEngine_x64.exe”

EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0',N'AllowInProcess',1 走 EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0',N'DynamicParameters',1 GO

链接服务器“(null)”的OLE DB提供程序“Microsoft.ACE.OLEDB.12.0”返回消息“未指定的错误”。 Msg 7303,Level 16,State 1,Line 47 无法为链接服务器“(null)”初始化OLE DB提供程序“Microsoft.ACE.OLEDB.12.0”的数据源对象。 FIX =  EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0',N'AllowInProcess',0  GO - 或者在Sql Management Studio中转到服务器对象 - 链接服务器 - 提供程序 - Microsoft.Jet.OLEDB.4.0然后选择并取消选中“允许进程”。 FIX =将“-g512;”添加到参数“启动参数”的值的前面。

Msg 7399,Level 16,State 1,Line 57 链接服务器“(null)”的OLE DB提供程序“Microsoft.ACE.OLEDB.12.0”报告错误。拒绝访问。 Msg 7350,Level 16,State 2,Line 57 无法从OLE DB提供程序“Microsoft.ACE.OLEDB.12.0”获取链接服务器“(null)”的列信息。 FIX =将SQL Server数据引擎帐户从“NT Service \ MSSQLServer”更改为具有访问权限的域帐户