------------------
PS:
本地计算机安装的为:VF 7.0,在本地机器上面建立一个DBF文件,则,以下sql数据能够执行通过:
INSERT INTO ZYYL SELECT blh,brxm,xb,nl,bq,ch,ryrq,zz,dw from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','dBase 5.0;DATABASE=d:\PUBDATA','select * from [zyyl.dbf]')
问:
我将服务器上存放数据的硬盘映射到本地盘为:H盘.按照上面能通过sql语句改写为:
服务器上的VF 为2.6版本
INSERT INTO ZYYL SELECT blh,brxm,xb,nl,bq,ch,ryrq,zz,dw from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','dBase 5.0;DATABASE=H:\PUBDATA','select * from [zyyl.dbf]')
出现已下问题:
OLE DB 提供程序 'MICROSOFT.JET.OLEDB.4.0' 报错。
[OLE/DB provider returned message: Microsoft Jet 数据库引擎找不到对象'zyyl.dbf'。请确定对象是否存在,并正确地写出它的名称和路径。]
------------
PS:我曾搜索CSDN一篇邹(ZJCXC)回复帖子,所使用语句如下:
select * from openrowset('MSDASQL','Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=H:\PUBDATA', 'select * from [ZYYl.DBF]') --aa.dbf是文件名
报已下错误:
服务器: 消息 7399,级别 16,状态 1,行 1
OLE DB 提供程序 'MSDASQL' 报错。
[OLE/DB provider returned message: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序]
-----------------
等到大家的回答
14 个解决方案
#1
应该是权限的问题吧
记得是要在sql server所在服务器上建立一个和dbf所在服务器相同的管理员
并且把sql server服务用这个帐号启动。
记得是要在sql server所在服务器上建立一个和dbf所在服务器相同的管理员
并且把sql server服务用这个帐号启动。
#2
谢谢楼上回答
权限问题可以排除
我使用BDE对服务器的 DBF文件技能查询的时候
"select * from zyyl"(BDE连接后的zyyl)是执行成功的!
权限问题可以排除
我使用BDE对服务器的 DBF文件技能查询的时候
"select * from zyyl"(BDE连接后的zyyl)是执行成功的!
#3
主是要你是用的映射,sql server 在访问映射盘是会存在这个权限的问题:
参考下这个吧,意思是一样的:
参考下这个吧,意思是一样的:
SQL Server 2000下将数据库直接备份到网络上其它计算机硬盘:
具体方法如下:
1.两台机器(数据库所在的机器和存放备份文件的机器)都需要建一个同名同密码的用户,方便起见,最好将这两个用户都直接归到管理员组下;
2.将数据库的启动帐户设置成刚才所建立的那个帐户,并重新开启SQL服务;
3.假设远程机器的IP是192.168.61.234,共享为默认共享f$,先用查询分析器登陆到本地的SQL服务器(用sa和信任模式都可以),在 master下执行xp_cmdshell 'dir \\192.168.61.234\f$'看有没有结果,还是有报错的,如有报错,请根据错误提示检查;
4.执行以下备份语句可将数据库备份到远程硬盘上,以crm2k为例:
backup database crm2k to disk='\\192.168.61.234\f$\crm2k0722_2.dmp'
5.同时注意,一定要用“\\机器名或IP”不能用映射的盘符。
注释:
直接备份到远程硬盘并不是个好主意,一方面速度慢,另一方面网络传输过程中可能出现意外。还是直接备份到本地,再拷到远程硬盘的好,用SQL的脚本可以调用:“调用master..xp_cmdshell 'copy...'实现。”
另外,xp_cmdshell是一个个十分有用的扩展存储过程,它可以在SQL中执行WINDOWS的命令行命令,在使用SQL过程中益处很大。
本机备份和还原数据库的Transact-SQL实现如下:
backup database 数据库名称 to disk = 'C:\DATA1'(具体选择实际的路径名称)
restore database 数据库名称 from disk = 'C:\yuhua.bak'(具体选择实际的路径名称)
#4
我并不是把本地数据备份到远程硬盘
而是把服务器Foxpro的数据导入本地的sql数据库进行查询!
而是把服务器Foxpro的数据导入本地的sql数据库进行查询!
#5
perfectaction 你所提到的第1.2点已经做到了
我使用的IPX协议!(意为IP地址不存在)
Netware网络进行的数据访问!
我使用的IPX协议!(意为IP地址不存在)
Netware网络进行的数据访问!
#6
个人判断为:服务器上的VPF 版本与我本地所使用的VPF版本不同所产生的结果
服务器为FOXPRO2.6 我的本地机器为foxPRo 7.0(可以使用'MICROSOFT.JET.OLEDB.4.0','dBase 5.0;DATABASE=H:\PUBDATA' )
才会产生
OLE DB 提供程序 'MICROSOFT.JET.OLEDB.4.0' 报错。
[OLE/DB provider returned message: Microsoft Jet 数据库引擎找不到对象'zyyl.dbf'。请确定对象是否存在,并正确地写出它的名称和路径。]
------------
服务器为FOXPRO2.6 我的本地机器为foxPRo 7.0(可以使用'MICROSOFT.JET.OLEDB.4.0','dBase 5.0;DATABASE=H:\PUBDATA' )
才会产生
OLE DB 提供程序 'MICROSOFT.JET.OLEDB.4.0' 报错。
[OLE/DB provider returned message: Microsoft Jet 数据库引擎找不到对象'zyyl.dbf'。请确定对象是否存在,并正确地写出它的名称和路径。]
------------
#7
master下执行xp_cmdshell 'dir H:'
是否可以看到H的内容呢?
是否可以看到H的内容呢?
#8
output
1:系统找不到指定路径
2:null
1:系统找不到指定路径
2:null
#9
那不完了.仔细看我3楼给你贴的东西吧。
#10
你映射的目录有问题,
按照P.A说的,做好映射 H:\
按照P.A说的,做好映射 H:\
#11
o,如果是备份的话,
最好是Copy到本地处理,
#12
我把服务器映射到本地机器为"H"盘以后
直接双击盘符后能够打开里面的DBF文件
可是sql打不开
太郁闷了
直接双击盘符后能够打开里面的DBF文件
可是sql打不开
太郁闷了
#13
拷贝都本地处理吧,
#14
我也想直接copy映射盘的数据到本地在处理啊
哎!
问题是使用软件的哪个人不会啊
哎!
问题是使用软件的哪个人不会啊
#1
应该是权限的问题吧
记得是要在sql server所在服务器上建立一个和dbf所在服务器相同的管理员
并且把sql server服务用这个帐号启动。
记得是要在sql server所在服务器上建立一个和dbf所在服务器相同的管理员
并且把sql server服务用这个帐号启动。
#2
谢谢楼上回答
权限问题可以排除
我使用BDE对服务器的 DBF文件技能查询的时候
"select * from zyyl"(BDE连接后的zyyl)是执行成功的!
权限问题可以排除
我使用BDE对服务器的 DBF文件技能查询的时候
"select * from zyyl"(BDE连接后的zyyl)是执行成功的!
#3
主是要你是用的映射,sql server 在访问映射盘是会存在这个权限的问题:
参考下这个吧,意思是一样的:
参考下这个吧,意思是一样的:
SQL Server 2000下将数据库直接备份到网络上其它计算机硬盘:
具体方法如下:
1.两台机器(数据库所在的机器和存放备份文件的机器)都需要建一个同名同密码的用户,方便起见,最好将这两个用户都直接归到管理员组下;
2.将数据库的启动帐户设置成刚才所建立的那个帐户,并重新开启SQL服务;
3.假设远程机器的IP是192.168.61.234,共享为默认共享f$,先用查询分析器登陆到本地的SQL服务器(用sa和信任模式都可以),在 master下执行xp_cmdshell 'dir \\192.168.61.234\f$'看有没有结果,还是有报错的,如有报错,请根据错误提示检查;
4.执行以下备份语句可将数据库备份到远程硬盘上,以crm2k为例:
backup database crm2k to disk='\\192.168.61.234\f$\crm2k0722_2.dmp'
5.同时注意,一定要用“\\机器名或IP”不能用映射的盘符。
注释:
直接备份到远程硬盘并不是个好主意,一方面速度慢,另一方面网络传输过程中可能出现意外。还是直接备份到本地,再拷到远程硬盘的好,用SQL的脚本可以调用:“调用master..xp_cmdshell 'copy...'实现。”
另外,xp_cmdshell是一个个十分有用的扩展存储过程,它可以在SQL中执行WINDOWS的命令行命令,在使用SQL过程中益处很大。
本机备份和还原数据库的Transact-SQL实现如下:
backup database 数据库名称 to disk = 'C:\DATA1'(具体选择实际的路径名称)
restore database 数据库名称 from disk = 'C:\yuhua.bak'(具体选择实际的路径名称)
#4
我并不是把本地数据备份到远程硬盘
而是把服务器Foxpro的数据导入本地的sql数据库进行查询!
而是把服务器Foxpro的数据导入本地的sql数据库进行查询!
#5
perfectaction 你所提到的第1.2点已经做到了
我使用的IPX协议!(意为IP地址不存在)
Netware网络进行的数据访问!
我使用的IPX协议!(意为IP地址不存在)
Netware网络进行的数据访问!
#6
个人判断为:服务器上的VPF 版本与我本地所使用的VPF版本不同所产生的结果
服务器为FOXPRO2.6 我的本地机器为foxPRo 7.0(可以使用'MICROSOFT.JET.OLEDB.4.0','dBase 5.0;DATABASE=H:\PUBDATA' )
才会产生
OLE DB 提供程序 'MICROSOFT.JET.OLEDB.4.0' 报错。
[OLE/DB provider returned message: Microsoft Jet 数据库引擎找不到对象'zyyl.dbf'。请确定对象是否存在,并正确地写出它的名称和路径。]
------------
服务器为FOXPRO2.6 我的本地机器为foxPRo 7.0(可以使用'MICROSOFT.JET.OLEDB.4.0','dBase 5.0;DATABASE=H:\PUBDATA' )
才会产生
OLE DB 提供程序 'MICROSOFT.JET.OLEDB.4.0' 报错。
[OLE/DB provider returned message: Microsoft Jet 数据库引擎找不到对象'zyyl.dbf'。请确定对象是否存在,并正确地写出它的名称和路径。]
------------
#7
master下执行xp_cmdshell 'dir H:'
是否可以看到H的内容呢?
是否可以看到H的内容呢?
#8
output
1:系统找不到指定路径
2:null
1:系统找不到指定路径
2:null
#9
那不完了.仔细看我3楼给你贴的东西吧。
#10
你映射的目录有问题,
按照P.A说的,做好映射 H:\
按照P.A说的,做好映射 H:\
#11
o,如果是备份的话,
最好是Copy到本地处理,
#12
我把服务器映射到本地机器为"H"盘以后
直接双击盘符后能够打开里面的DBF文件
可是sql打不开
太郁闷了
直接双击盘符后能够打开里面的DBF文件
可是sql打不开
太郁闷了
#13
拷贝都本地处理吧,
#14
我也想直接copy映射盘的数据到本地在处理啊
哎!
问题是使用软件的哪个人不会啊
哎!
问题是使用软件的哪个人不会啊