向SQL2005中导入.dbf文件中的数据
来源:互联网 发布:ios和mac os区别 编辑:程序博客网 时间:2024/05/17 22:20
有时我们需要从.dbf文件中将数据导入到SQL2005中,当然这个可能出于各种原因,比如说:原来项目是用的.dbf的数据库,而现在新的项目里使用的是SQL2005的数据库,但原来的数据又不能丢,这时就需要这类的操作。其实这样的操作是经常的,比如:SQL2005到ORACLE中,或是从ORACLE到SQL2005/2008;最近遇到了这样的问题,在网上寻找了很久,终于得到了一个解决的方法,在此记录一下。
在SQL2005中,若要读取.dbf的文件的数据,就得启用SQL2005的高级组件,叫:Ad Hoc Distributed Queries,若没有启用就会出现以下的错误提示信息:
所以需要启动它,代码如下:
---启用Ad Hoc Distributed Queries:exec sp_configure 'show advanced options',1reconfigureexec sp_configure 'Ad Hoc Distributed Queries',1reconfigure
启动了Ad Hoc Distributed Queries,就可以读取.dbf文件中的数据了,读取的代码如下:
select*from openrowset('MICROSOFT.JET.OLEDB.4.0','dBase 5.0;DATABASE=c:/code/','select * from [TD_MZDM.DBF]')
结果如下:
我们已经读取到了dbf文件中的数据,那么要将它存放在一张表中就很明显了,使用以下代码可以将其数据与表结构导入到SQL2005中:
select*into #td_mzdm from openrowset('MICROSOFT.JET.OLEDB.4.0','dBase 5.0;DATABASE=c:/code/','select * from [TD_MZDM.DBF]')---查询临时表select*from #td_mzdm
结果与上面是一样的,这里就不截图了
若是你的SQL2005中已经有一张表结构与dbf文件中表结构相似(就是可以把数据导入的表),那么也可以使用以下的语句完成数据的导入:
insertinto #td_mzdmselect*from openrowset('MICROSOFT.JET.OLEDB.4.0','dBase 5.0;DATABASE=c:/code/','select * from [TD_MZDM.DBF]')
当然我们也可以向dbf文件中插入数据,其方式差不多,代码如下:
insertintoopenrowset('MICROSOFT.JET.OLEDB.4.0','dBase 5.0;DATABASE=c:/code/', 'select * from [TD_BYLB.DBF]') select*from dbo.td_bylbdm
结果得到受影响的行数:
导入完数后,我们需要关闭那个高级选项Ad Hoc Distributed Queries,代码如下:
---关闭Ad Hoc Distributed Queries:exec sp_configure 'Ad Hoc Distributed Queries',0reconfigureexec sp_configure 'show advanced options',0reconfigure
最后要说明的一点是:不同的版本的dbf文件所对应的SQL语句不一定都相同,所以以上代码只作为一个参考和思路,谢谢!!!
- 向SQL2005中导入.dbf文件中的数据
- 如何在 SQL2005 导入 DBF 数据
- dbf文件数据导入数据库
- SQL Server 2008导入DBF文件中的数据
- [SQL码农]SQL Server 2008导入DBF文件中的数据
- dbf/access/excel等数据导入到sql2005
- C# 读取dbf文件中的数据到datatable中
- dbf数据如何导入supmap中?
- dbf文件导入到SqlServer中
- 导入DBF文件方法
- 导入DBF文件方法
- 文本文件数据导入到sql2005中
- 怎么把DBF文件导入到SQL SERVER 2000中?
- 将VFP的DBF文件导入SQL-Server2005中
- JAVA解析DBF文件导入到Oracle数据库中
- DBF 文件数据读取
- 如何用C#来实现把FoxPro(以.dbf结尾文件)和Excle数据导入SQL语句中
- 向wamp中的mysql中导入sql文件
- 实现分析 - Enemy
- rapidxml 使用手册2
- 全面解读WM_NOTIFY
- PopupWindow点击边框以外消失的方法
- 国外程序员推荐:每个程序员都应读的书
- 向SQL2005中导入.dbf文件中的数据
- file的getPath getAbsolutePath和getCanonicalPath的不同
- STL简介
- oracle下载位置统计
- 注册表中的驱动程序信息
- 数学公式
- 归并排序
- Makefile .depend
- 例程之九_GUI_获取窗口的进程PID