标题:DBF表如何倒入到SQL SERVER2000?
只看楼主
lidong001
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-4-12
 问题点数:0 回复次数:3 
DBF表如何倒入到SQL SERVER2000?
我准备做个C/S系统,头次接触SQL SERVER2000,VFP的DBF表如何倒入到SQL SERVER2000?
搜索更多相关主题的帖子: SQL DBF表 VFP 系统 
2006-09-05 10:42
bmbboy
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2006-9-12
得分:0 
先导exl,再导入sql
2006-09-20 22:47
fown
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:58
帖 子:1229
专家分:171
注 册:2005-5-26
得分:0 
VFP中有升迁向导的

有人说VFP不行了,我想说,你连VFP十分之一的功能都不会用,你怎么知道VFP不行?本人拒绝回答学生的问题我回答问题一般情况下只提供思路不提供代码,请理解
2006-09-22 18:03
panyj
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-10-11
得分:0 

以下均以SQL2000、VFP6及以上的表为例


方法一:查询分析器中执行如下语句(先选择对应的数据库)

--如果接受导入数据的SQL表已经存在
insert into 已经存在的SQL表名 select * from openrowset('MSDASQL','Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=c:\','select * from aa.DBF')

--也可以对应列名进行导入,如:
insert into 已经存在的SQL表名 (列名1,列名2...) select (对应列名1,对应列名2...) from openrowset('MSDASQL','Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=c:\','select * from aa.DBF')

--如果接受导入数据的SQL表不存在,导入时创建

--方法一:
select * into 要生成的SQL表名 from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','dBase IV;HDR=NO;IMEX=2;DATABASE=c:\','select * from dbf表名.dbf')

--方法二:
select * into 要生成的SQL表名 from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','dBase III;HDR=NO;IMEX=2;DATABASE=c:\','select * from dbf表名.dbf')

--方法三:
select * into 要生成的SQL表名 from openrowset('MSDASQL','Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=c:\','select * from dbf表名.DBF')

--用前两种方法导入SQL SERVER后,源表再用VFP打开就不提示“不能存取文件”,说明语句执行后就把源表关闭了。不过也有不尽人意的地方,就是用前两种方法导入后,源表中的字符型字段导入后SQL表字段对应变成NVARCHAR了。
--第三种方法有一个缺点:把DBF表导入SQL Server中后,马上用VISUAL FOXPRO打开DBF表,会提示“不能存取文件”,即这个表还被SQL打开着呢。可是过了1分钟左右,再打开DBF表就可以了,说明经过一段时间后查询分析器才把这个表关闭。

--也可以只导几个字段
select * into 要生成的SQL表名 from openrowset('MSDASQL','Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=c:\','select 字段1,字段2 from aa.DBF')

/*--说明:
SourceDB=c:\ c:\是dbf文件的存放目录
aa.DBF 是dbf文件名
--*/

2006-10-11 09:51



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-88138-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.507609 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved