科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道将DBF数据库转换成SQL Server表

将DBF数据库转换成SQL Server表

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

随着计算机技术的发展,客户机/服务器(Client/Server)体系结构的数据库系统应用越来越广泛....

作者:佚名 来源:Yesky 2007年10月23日

关键字: DBF 转换 SQL Server

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共2页)

1、前言 随着计算机技术的发展,客户机/服务器(Client/Server)体系结构的数据库系统应用越来越广泛,而Foxbase、Foxpro是我国近阶段使用较广的数据库开发软件,很多数据都存在DBF表中,本文将介绍如何将DBF表中的数据转换到SQL Server表中。

  2、用Visual Basic编程实现转换 用Visual Basic编程实现转换,即通过SQL Server提供的ODBC接口(开放数据库接口)及Visual Basic中应用数据访问,建立Visual Basic与SQL Server的连接,由Visual Basic向SQL Server提交创建表命令,然后将.dbf的每条记录提交给SQL Server,完成数据转换。DBF的数据结构是(examp1.dbf): 字段名类型字段长度字段内容

  Id C 4货物编号

  name C 20货物名称

  实现步骤:

  (1)在数据库服务器”sqlserver1”中建立数据库sqlexample,建立一个表”example1”,其结构与examp1.dbf结构相同。其结构是: 字段名类型字段长度字段内容

  Id C 4货物编号

  name C 20货物名称

  (2)、ODBC的设置:在客户机上进入Windows的控制面板( Control panel )。双击ODBC数据源(32位)图标,进行数据库的ODBC驱动设置。在用户DSN下,按“添加”,选择SQL Server,在名称输入”sql1”,服务器输入”sqlserver1”,用户名输入”sa”,口令输入”123456”,测试是否连通。

  (3)、在Visual Basic建立一工程,添加“引用”Microsoft ActiveXData Objects2.1 Library和Microsoft DAO 3.51 object library。在Form1上建一个Command1,将Command1的Caption改为转换。程序清单如下:
Private Sub Command1_Click()
Dim db As Database
Dim tb As Recordset
‘打开C:examp1.dbf
Set db=OpenDatabase(c:,False,False,”foxpro 2.5”)
Set tb=db.OpenRecordset(examp1)

Dim conn1 As ADODB.Connection
Dim cmd1 As ADODB.Command

Set conn1=New ADODB.Connection
Set cmd1=New ADODB.Command

cons1=”ODBC;DATABASE=sqlexample;UID=sa;PWD=123456;DSN=sql1”
conn1.Open cons1
Set cmd1.ActiveConnection=conn1
Do while not tb.EOF
Cmds1=”insert into example1 values(‘“& tb.Fields(0) &”’,‘“& tb.Fields(1)
&”’)”
cmd1.CommandText=cmds1
cmd1.Execute
tb.MoveNext
Loop


  MsgBox“载入完毕”,,”提示”

Cnn1.Close
Unload me
End Sub


  使用上述方法,只要知道一些简单的SQL Server操作及Visual Basic编程便可实现将DBF中的数据载入到SQL Server中。但存在不足之处,如果DBF中数据量很大,超过几十万条记录时,载入的时间将会很长。解决大批量数据载入,需要用到SQL Server所提供的块拷贝实用程序(bcp)
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章