VFP表转换成SQL Server表的方法

VFP表转换成SQL Server表的几种方法 
 
实现转换的具体方法 
 
---- 我们以Foxpro的数据库结构的单位职工库(zg.dbf)为例,进行数据转换。其数据结构为: 
 
字段名 类型 字段长度 小数点位数 字段内容
bh C 4 职工编号
xm C 8 职工姓名
xb C 2 性别
nl N 2 0 年龄
zw C 10 职务
gzsj D 参加工作时间
jl M 简历
zp G 照片
 
---- 实现步骤: 
 
---- (1)、启动服务器,进入Window NT,SQL Server 6.0,打开SQL Enterprise Manager为单位职工库创建一个数据库设备zg.dat,然后在该设备上建立zg数据库及表(Table),表的数据结构要与zg.dbf的数据结构一致。或用以下SQL Server命令创备和创建表。 
 
---- (2)、在客户机上启动Foxpro,用USE命令打开需转换的.dbf文件,用COPY命令将.dbf文件中数据转换成标准的文本文件.txt
 
---- (3)、从客户机登录到Windows NT服务器上,将zg.txt文件拷贝到服务器的职工库目录c://zg下。 
 
---- (4)、在服务器上,由Windows NT进入到MS-DOS状态,然后执行bcp将数据从zg.txt转换到SQL表,命令格式如下: 
 
---- bcp zg in zg.txt /c /s mainserver /u manager /P 0001 (mainserver为服务器名,manager为用户名,0001为用户口令)。 
 
---- 该转换方法速度较快,不占用服务器上事务日志空间。但较为复杂、繁锁,操作者必须熟练掌握Foxpro、SQL Server的命令和操作,而且无法将Foxpro的Memo、General字段转换到SQL Server表。 
 
---- 3、用Foxpro for Window 2.5 编程实现转换 
 
---- “用Foxpro编程实现数据转换”即通过SQL Server提供的ODBC接口(开放数据库接口)及Foxpr提供ODBC接口工具Connectivity Kit (fpsql.fll),建立SQL与Foxpro的连接,由Foxpro向SQL Server提交创建表命令,然后将.dbf的每条记录,串成一个字符串,将插入命令连同字符串提交给SQL Server,完成数据转换。 
 
---- 实现步骤: 
 
---- (1)、设置 ODBC
---- (2)、采用上述方法一中步骤1的⑴、⑵创建zg数据库设备及数据库,然后执行Foxpro程序crea_table,创建一个结构与.dbf结构相同的SQL Server表。
---- (3)、再执行Foxpro程序conv_data将数据由.dbf传输到SQL Server表中。 
---- 使用上述方法,只要知道一些简单的SQL Server操作及Foxpro编程便可实现将.dbf数据转换到SQL Server。运行程序然后输入待转换的数据库名,及目的数据库名就可实现转换,快捷方便。但不足的是,该方法在原数据库.dbf含有Memo、General字段时,转换就比较困难,目前尚没有找到有效的解决方法。 
---- 4、用第三方数据库软件Access进行转换 
---- Access是Microsoft公司的数据库开发软件,使用Access提供的数据输入(Inport)/输出(Export)的功能及ODBC接口,可直接将数据结构及数据转送到SQL Server。 
 
---- 实现步骤: 
---- (1)、按方法二中的第1、2步骤完成数据库设备、数据库创建和ODBC接口的设置。 
---- (2)、然后在Windows for Workgroup中启动Access,在File菜单中选择“new”创建一个新的Access数据库,然后在File菜单中选择”Attach table”连接zg.dbf数据库。 
---- (3)、在“Attach”窗口的“Data source”栏中选择数据库源为Foxpro 2.5,按“OK”,之后弹出“Select Microsoft Access Database”窗口,在该窗口选择要转换的.dbf数据库zg.dbf,按”OK”结束,然后按“Close”完成数据库连接。 
---- (4)、在File菜单中选择“Export”输出数据,在“Export”窗口选择目标数据库类型“”按“OK”进入下一窗口“Select Microsoft Access Object”,在“Object in DB1”栏选择要转换的数据库zg, 在窗口的“View”栏下选择“Table”项,,按“OK”。 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值