MySQL数据库如何导出dbf格式数据_SQL数据库与dbf导⼊导
出【转】
matlab中load函数用法
免费html空间系统已经安装 vfpoledb,
单独执⾏:
select * from openrowset('VFPOLEDB.1','d:\';'admin';'','select 列1 from 表1')
时,可以正常。
insert into
openrowset('VFPOLEDB.1','d:\';'admin';'','select 列1 from 表1')
select 列1 from 表2
出错提⽰:
服务器: 消息 7301,级别 16,状态 2,⾏ 1未
能从 OLE DB 提供程序 'VFPOLEDB.1' 获得所需的接⼝。
换成下⾯的:--------------------------------------------
insert into OPENROWSET('MICROSOFT.JET.OLEDB.4.0','dBase III;DATABASE=D:\','select BM from [yh.dbf]')
select BM from yht
则出现这个错误:
未能处理对象 'select BM from [yh.dbf]'。
OLE DB 提供程序'MICROSOFT.JET.OLEDB.4.0' 指出该对象中没有任何列。
参考:
/**************导⼊DBF⽂件****************/
select * from openrowset('MSDASQL',
'Driver=Microsoft Visual FoxPro Driver;
SourceDB=e:\VFP98\data;
xmind
SourceType=DBF',
'select * from customer where country != "USA" order by country')
go
/***************** 导出到DBF ***************/
如果要导出数据到已经⽣成结构(即现存的)FOXPRO表中,可以直接⽤下⾯的SQL语句
insert into openrowset('MSDASQL',
'Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=c:\',
'select * from [aa.DBF]')
select * from 表
说明:
SourceDB=c:\ 指定foxpro表所在的⽂件夹
aa.DBF 指定foxpro表的⽂件名.
--注意:驱动名中不要有多余的空格。
insert into openrowset('MSDASQL','Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=D:\','select 列1 from [表2.DBF]')
select 列1
from 表2
导⼊导出
----------DBF 导⼊ SQL Server表----------
以下均以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⽂件的存放⽬录
路过
还不如直接⽤SQL的导⼊导出来得简单.
直接⽤SQL SERVER 的导⼊导出,在选择导出类别为DBASE5。0时,按下⼀步也出现错误??
MARK
----------DBF 导⼊ SQL Server表----------
以下均以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')
jquery分页插件的使用说明
--如果接受导⼊数据的SQL表不存在,导⼊时创建
--⽅式⼀:
select * into 要⽣成的SQL表名 from openrowset('MSDASQL','Driver=Microsoft Visual FoxPro
Driver;SourceType=DBF;SourceDB=c:\','select * from dbf表名.DBF')
-
-⽅式⼆:
select * INTO TEMP1 from openrowset('VFPOLEDB.1','C:\';'admin';'' ,'select * from dbf表名.DBF')
如果没有安装VFP,需要把vfpoledb.dll拷贝到SYSTEM⽬录下,并注册。mysql面试题导图
--⽅式三:
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')
--⽤前两种⽅式导⼊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⽂件的存放⽬录
⽅法⼆:通过SQL Server的“导⼊导出数据”⼯具(DTS)
1、建⽴Visual FoxPro的数据源:
在ODBC中建⽴⼀个Visual FoxPro的数据源(ODBC-Microsoft Visual FoxPro Driver)的步骤如下:
打开ODBC配制窗⼝ ->
选择“⽤户DSN”页⾯或“系统DSN”页⾯,建议⽤后者 ->
点击“添加”按钮 ->
选择“Microsoft Visual FoxPro Driver”这个驱动 ->
在Data Source Name(数源源名称)处输⼊此数据源名称,可⾃定,本例如LjDbf,Database Type(数据库类型)处选择“Free Table directory”(⾃由表路径),然后在下⾯的Path(路径)处设置你要导⼊的DBF表所在的路径,本列如“D:\” ->
点击“OK”(确定)配制完成 ->
关闭ODBC配制窗⼝
2、通过SQL的导⼊导出数据(DTS)来把DBF表导成SQL表:
开始 ->
程序 ->
Microsoft SQL Server-导⼊导出数(DTS)->
下⼀步 ->
此步为“选择数据源”的窗⼝,“数据源”选“Microsoft Visual FoxPro Driver”,同时在"⽤户/系统DSN"处选择你刚刚配制的数据源名(本例如LjDbf,当然上⾯配制数据源的过程也可以通过“⽤户/系统DSN”后⾯有⼀个“新建”按钮来完成),然后点击“下⼀步” ->
数据库能做什么此步为“选择⽬的”的窗⼝,“⽬的”选"⽤于SQL Server的Microsoft OLE DB提供程序"(此项⼀般为默认),同时选择你要导成的SQL表的存放数据库、服务器及服务器的验证⽅式,然后点击“下⼀步” ->
这时:
A:如果要把DBF表全部字段均导⼊,则选择“从源数据库复制表和视图”,点击“下⼀步” ->
选择要导⼊的DBF表,在‘⽬的’处可修改⽣成SQL表的名称,默认与DBF表名⼀样,点击“下⼀步” ->
再点击“下⼀步” ->
最后点击“完成”进⾏导⼊即可(导⼊成功与否DTS会有提⽰)。
B:如果只导⼊DBF表中的⼏个字段或全部字段(如果导⼊全部字段,也可以⽤上⾯步骤A,结果是⼀样的,只是⽅法不同),则选择“⽤⼀条查询指定要输出的数据”,点击“下⼀步” ->
点击“查询⽣成器”,选择要导⼊的DBF表(此时可选择列),点击“下⼀步” ->
指定排序顺序,选⼀个或多个排序字段,如果不⽤排序,此步可略,点击“下⼀步” ->
此步可以指定查询条件,如果没有条件,此步可略,点击“下⼀步” ->
出现了对应的SQL语句(也可以再修改⽣成的SQL语句,但不推荐),再点击“下⼀步” ->
这时可修改要⽣成的SQL表名,默认为“结果”,再点击“下⼀步” ->
再点击“下⼀步” ->
最后点击“完成”进⾏导⼊即可(导⼊成功与否DTS会有提⽰)。
⽅法三:
先把DBF表转成EXCEL或TXT,然后SQL SERVER的导⼊导出⼯具把EXCEL或TXT导⼊即可(此⽅法类似⽅法⼆,不再介绍)。
----------SQL Server表 导出 DBF----------
⽅法⼀:如果DBF表已经存在,在查询分析器中执⾏以下语句(先选择对应的数据库)
insert into openrowset('MSDASQL','Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=c:\','select * from 表B.DBF') select * from 表a
/*--说明:
SourceDB=c:\c:\是dbf⽂件的存放⽬录
表B.DBF是已经存在dbf⽂件名,数据导⼊此表
表A.dbf是要导出的SQL表名
--*/
⽅法⼆:如果DBF表不存在,直接导出时创建,通过SQL Server的“导⼊导出数据”⼯具
1、建⽴Visual FoxPro的数据源:
在ODBC中建⽴⼀个Visual FoxPro的数据源(ODBC-Microsoft Visual FoxPro Driver)的步骤如下:
打开ODBC配制窗⼝ ->
选择“⽤户DSN”页⾯或“系统DSN”页⾯,建议⽤后者 ->
点击“添加”按钮 ->
选择“Microsoft Visual FoxPro Driver”这个驱动 ->
在Data Source Name(数源源名称)处输⼊此数据源名称,可⾃定,本例如LjDbf,Database Type(数据库类型)处选择“Free Table directory”(⾃由表路径),然后在下⾯的Path(路径)处随便设置⼀个路径,本列如“D:\” ->
点击“OK”(确定)配制完成 ->
关闭ODBC配制窗⼝
2、通过SQL的导⼊导出数据(DTS)来把SQL表导成DBF表:
开始 ->
程序 ->
Microsoft SQL Server-导⼊导出数(DTS)->
下⼀步 ->
此步为“选择数据源”的窗⼝,“数据源”选"⽤于SQL Server的Microsoft OLE DB提供程序"(此项⼀般为默认),同时选择你要导出的SQL表所在数据库、服务器及服务器的验证⽅式,然后点击“下⼀步” ->
此步为“选择⽬的”的窗⼝,“⽬的”选“Microsoft Visual FoxPro Driver”,同时在"⽤户/系统DSN"处选择你刚刚配制的数据源名(本例如LjDbf,当然上⾯配制数据源的过程也可以通过“⽤户/系统DSN”后⾯有⼀个“新建”按钮来完成),然后点击“下⼀步” ->
这时:
A:如果要把被导出的SQL表的全部字段均导出,则选择“从源数据库复制表和视图”,点击“下⼀步” ->
选择要导出的表或视图,在‘⽬的’处可修改⽣成的DBF表的名称,默认与SQL表名⼀样,点击“下⼀步” ->

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。