access导入SQL server中总是报错
我想把远程机器的MDB文件("\\192.168.1.23\pc pbd xxx\x.mdb")中的表bill,导入本地SQL server2K中的表test2005中去.
在查询分析器中如下写:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
select * into test2005
from opendatasource('Microsoft.Jet.OLEDB.4.0','Data Source="\\192.168.1.23\pc pbd xxx\x.mdb";user ID=domain\pUser;password=testsys')...bill
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
测试不报错,证明语法没有问题.
但是只要运行就报错如下:
#############
服务器: 消息 7399,级别 16,状态 1,行 3
OLE DB 提供程序 'Microsoft.Jet.OLEDB.4.0' 报错。验证失败。
[OLE/DB provider returned message: 无法启动应用程序。工作组信息文件丢失,或是已被其它用户以独占方式打开。]
###############
后来我也尝试把远程机器的MDB文件拷贝到本地来,并确保此MDB文件未被打开.然后更改语句测试,却还是如此报错.请高手帮忙诊断一下,谢谢了!
问题点数:36、回复次数:7Top
1 楼solidpanther(╃╄╃我爱机器猫╄╃╄)回复于 2005-07-01 10:54:08 得分 30
user ID=domain\pUser;password=testsys'
不是指网络的用户权限,而是对access访问的权限,Top
2 楼aloesky(0.5幸福)回复于 2005-07-01 11:23:15 得分 0
谢谢solidpanther(╃╄╃我爱机器猫╄╃╄) ,问题解决!加分,
另外请教:我用这种方式只能解决将与SQL SERVER在同一台服务器的access文件导入sql server,如果想将网络中其它机器上的MDB文件导入本地sql server该怎么做呢?用\\192..样式的方式,SQL查询分析器报错:
服务器: 消息 7399,级别 16,状态 1,行 3
OLE DB 提供程序 'Microsoft.Jet.OLEDB.4.0' 报错。
[OLE/DB provider returned message: Microsoft Jet 数据库引擎打不开文件'\\192.168.39.23\PBX Charge System 6.5\xxx2005-07.mdb'。 它已经被别的用户以独占方式打开,或没有查看数据的权限。]
而实际上,这个MDB文件是没有限制读取权限的,拷贝到本地后就可以直接用...
Top
3 楼mengzulin(Julian)回复于 2005-07-01 12:53:16 得分 3
建立一个网络磁盘,如建立G盘映射\\192.168.39.23\PBX Charge System 6.5\目录.然后用'G:\xxx2005-07.mdb'就可以了Top
4 楼solidpanther(╃╄╃我爱机器猫╄╃╄)回复于 2005-07-01 12:58:18 得分 3
你说的问题是:那个mdb正被打开,独占了,所以打不开,关掉access,
以后用的时候需要有一定的权限,建立个映射,保证每次启动机器的时候不用输入用户名密码
Top
5 楼aloesky(0.5幸福)回复于 2005-07-01 13:33:01 得分 0
不行,映射之后还是不能用,而且我可以保证远程机器上的MDB文件是没有打开的。
想试一下这种方法,不知道该怎么做:
建立一个批处理文件或者存储过程,每天或者每个小时,从远程机器的某个目录下,拷贝MDB文件到本地服务器的某个目录下(覆盖已有的文件),然后在MDB导入SQL SERVER?这一整个过程可以用存储过程完成吗?
请高手帮忙指点一下方法!谢谢了!Top
6 楼aloesky(0.5幸福)回复于 2005-07-01 13:37:28 得分 0
直接在映射的硬盘上打开MDB文件,报错:该文件位于您的intranet之外,或位于一个不信任位置。由于潜在的安全问题,Microsoft Access将不会打开该文件。要打开该文件,请将它拷贝到您的本地计算机,或一个可访问的网络位置上。Top
7 楼aloesky(0.5幸福)回复于 2005-07-01 14:52:58 得分 0
还有,我想给楼上的几位加分,怎么老实操作不成功,提示我“您输入的不是数字”,怎么办?Top




