+ -
当前位置:首页 → 问答吧 → 把本机EXCEL导入远程MSSQ报错,请帮忙看一下,谢谢!

把本机EXCEL导入远程MSSQ报错,请帮忙看一下,谢谢!

时间:2011-12-08

来源:互联网

SQL code

--服务器系统:windows server 2003
--SQL版本:SQL2008
--本机测试如下语句,正常! 本机系统为 XP SP3
insert OPENDATASOURCE('SQLOLEDB','Data Source=127.0.0.1\MSSQL;User ID=sa;Password=123456').TMS.dbo.seres 
SELECT * FROM OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="c:\test.xls";User
ID=Admin;Password=;Extended properties=Excel 8.0')...[Sheet1$]

--修改成其它电脑的IP,就报错
insert OPENDATASOURCE('SQLOLEDB','Data Source=10.7.15.1?\MSSQL;User ID=sa;Password=?').TMS.dbo.seres 
SELECT * FROM OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="C:\test.xls";
User ID=Admin;Password=;Extended properties=Excel 8.0')...[Sheet1$]
/*
消息 7399,级别 16,状态 1,第 1 行
链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 报错。提供程序未给出有关错误的任何信息。
消息 7303,级别 16,状态 1,第 1 行
无法初始化链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 的数据源对象。
*/
--服务器windows server 2003已安装MDAC_TYP

--请各位大牛帮忙看一下是什么原因?如何处理,谢谢! 
--分不够可以在加..

作者: abclm   发布时间: 2011-12-08

是远程数据库的链接问题。
1、能不能正常访问该计算机
2、能不能链接到该数据库服务器,该服务器的身份验证方式?
3、该服务器有没有打开远程查询?

作者: HEROWANG   发布时间: 2011-12-08

远程链接没有打开?TCP/IP协议没有打开?
TELNET 1433端口能通吗?
他机器上的是不是混合模式?
他机器上的EXCEL有没有关闭?

作者: fredrickhu   发布时间: 2011-12-08

防火墙有没有设置出入站规则?

作者: fredrickhu   发布时间: 2011-12-08

EXCEL你必须上传到远程服务器上C:\下。要不找不到EXCEL源文件。所以会报错。

作者: kakintj   发布时间: 2011-12-08

引用 4 楼 kakintj 的回复:

EXCEL你必须上传到远程服务器上C:\下。要不找不到EXCEL源文件。所以会报错。

还真是你说的这个问题!!

作者: abclm   发布时间: 2011-12-08

引用 1 楼 herowang 的回复:

是远程数据库的链接问题。
1、能不能正常访问该计算机
2、能不能链接到该数据库服务器,该服务器的身份验证方式?
3、该服务器有没有打开远程查询?


这三条都没有问题
1.能访问
2.混合验证
3.打开了

作者: abclm   发布时间: 2011-12-08

引用 2 楼 fredrickhu 的回复:

远程链接没有打开?TCP/IP协议没有打开?
TELNET 1433端口能通吗?
他机器上的是不是混合模式?
他机器上的EXCEL有没有关闭?


远程协议打开了.
telnet 1433是通的
是混合模式
两台机器都没有打开EXCEl

作者: abclm   发布时间: 2011-12-08

本机向远程SQL数据库导出数据,要用VBA实现.
因为:
EXCEL不是服务器,不能直接向远程传送数据.

作者: qianjin036a   发布时间: 2011-12-08