Foxpro DBF数据库转换成SQL Server 6.5表的几种方法
; sql_com=sql_com+&fname
case field_type="N"
sql_com=sql_com+"convert(int(8),'"+str(*fname)+"')"
case field_type="M"
sql_com=sql_com+'null'
case field_type="G"
sql_com=sql_com+'null'
endcase
skip
if .not.eof()
sql_com=sql_com+"','"
else
sql_com=aql_com+"')"
endif
enddo
success=dbexec(handle,sql_com)
sele op_dbf
skip
enddo
else && 若连接不成功
wait wind "对不起,输入参数错误,无法连接SQL Server"
clear read
retu
endif
使用上述方法,只要知道一些简单的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菜单中选择"
(5)、进入"Export"窗口,在"Export zg to"栏目下输入目的数据库名zg,按"OK"。进入"SQL Data Sources"窗口,在"Select Data Source",选择在ODBC中定义好的zg数据源,按"OK"
(6)、进入"SQL Server login"窗口,在"Login ID:"栏中输入登录用户名"sa",在"Password"栏中若有登录口令则输入口令。否则按"OK"开始进行数据转换。
使用该方法用户不需要深入了解Foxpro命令及SQL Server命令,也不须深入了解Access操作,更不需对.dbf数据库的数据结构进行分析,Access可根据原.dbf数据库的结构自动在SQL Server上创建一个结构相同的表,并且可将原.dbf数据库中不论是字符型、数字型、日期型、Memo型、General型的所有数据转换到SQL Server表中。该方法可以简单、方便快捷、完整地将所有.dbf中的数据的转换到SQL Server。
但使用该方法要注意一点,若要转换的数据量很大时,SQL Server中分配给该数据库的日志设备要足够大,或可在SQL Server中的ISQL/w命令窗口中用以下命令进行监控,并及时清除。
dbcc sqlperf (logspace) 检查事务日志空间的使用量
dump transaction zg with truncate_only 清除事务日志中已完成任务的数据
5、结束语
以上三种方法运行环境服务器端网络操作系统为Wi 《Foxpro DBF数据库转换成SQL Server 6.5表的几种方法(第4页)》
本文链接地址:http://www.oyaya.net/fanwen/view/172340.html
case field_type="N"
sql_com=sql_com+"convert(int(8),'"+str(*fname)+"')"
case field_type="M"
sql_com=sql_com+'null'
case field_type="G"
sql_com=sql_com+'null'
endcase
skip
if .not.eof()
sql_com=sql_com+"','"
else
sql_com=aql_com+"')"
endif
enddo
success=dbexec(handle,sql_com)
sele op_dbf
skip
enddo
else && 若连接不成功
wait wind "对不起,输入参数错误,无法连接SQL Server"
clear read
retu
endif
使用上述方法,只要知道一些简单的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"窗口选择目标数据库类型"<SQL Server>"按"OK"进入下一窗口"Select Microsoft Access Object",在"Object in DB1"栏选择要转换的数据库zg, 在窗口的"View"栏下选择"Table"项,,按"OK"。
(5)、进入"Export"窗口,在"Export zg to"栏目下输入目的数据库名zg,按"OK"。进入"SQL Data Sources"窗口,在"Select Data Source",选择在ODBC中定义好的zg数据源,按"OK"
(6)、进入"SQL Server login"窗口,在"Login ID:"栏中输入登录用户名"sa",在"Password"栏中若有登录口令则输入口令。否则按"OK"开始进行数据转换。
使用该方法用户不需要深入了解Foxpro命令及SQL Server命令,也不须深入了解Access操作,更不需对.dbf数据库的数据结构进行分析,Access可根据原.dbf数据库的结构自动在SQL Server上创建一个结构相同的表,并且可将原.dbf数据库中不论是字符型、数字型、日期型、Memo型、General型的所有数据转换到SQL Server表中。该方法可以简单、方便快捷、完整地将所有.dbf中的数据的转换到SQL Server。
但使用该方法要注意一点,若要转换的数据量很大时,SQL Server中分配给该数据库的日志设备要足够大,或可在SQL Server中的ISQL/w命令窗口中用以下命令进行监控,并及时清除。
dbcc sqlperf (logspace) 检查事务日志空间的使用量
dump transaction zg with truncate_only 清除事务日志中已完成任务的数据
5、结束语
以上三种方法运行环境服务器端网络操作系统为Wi 《Foxpro DBF数据库转换成SQL Server 6.5表的几种方法(第4页)》