数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

在PB中使用FoxPro数据库的方法[2]


发布日期:2020年06月24日
 
在PB中使用FoxPro数据库的方法[2]

在PB 中建立新表

打开新建的表

单击数据库画板中的数据操作(Data manipulation)按钮

选择菜单Rows ? Import

文件类型下拉框中选择dbaseII & III(*dbf)

选择被导入文件所在的目录及文件名

单击打开按钮

系统将打开指定的文件将该文件中的所有记录导入新建的表中

但系统不提供直接将导入数据保存在本数据库(表)中如果要将导入的记录保存为SQL Anywhere 环境下的数据库(表)中可以先将导入数据行以SQL格式保存在 sql 类型文件中在利用SQL语句将这些数据行插入新表中步骤如下

按上面所列的步骤导入数据库(DBF)文件中的数据

选择菜单File ? Save Row As …

存为类型列表框中选择SQL

选择保存路径输入保存文件名单击保存

关闭Data manipulation窗口回到数据库画板

单击DB Administration(数据库管理器)

选择菜单File ? Open

确信文件类型为SQL (*sql)

选择第步中所保存的文件单击打开按钮

删除文件起始部分的第一条SQL语句CREATE TABLE

单击Execute(执行)按钮系统将把原数据库中的所有行插入到新表中

需要注意的是新建的表在字段设置上必须与原DBF文件中的字段保持一致新表中的字段数必须等于或大于原DBF文件中的字段数

新表中的字段顺序要与原文件中的字段顺序一样即使新表中字段数更多但新的字段必须放在最后

新表与旧文件中字段名可以不一样

新表中的数据类型必须与旧表中的数据类型兼容字符 ? 字符 数值 ? 数字数字 ? 字符……

数据格式相一致如两个文件中的日期格式必须一致

新表中字段长度必须能容纳旧数据库文件中的对应字段中的数据旧数据库某一字段宽度为C但库中所有记录在该字段的实际最长为那么新表中的字段宽度至少应为C

如果你愿意也可以将原FoxPro中的数据库先转换到TXT格式文件再将TXT格式的文件导入SQL Anywhere数据库(表)中不过TXT文件中一条记录独占一行各字段间必须用Tab键(符)隔开其导入方法与DBF文件中数据的导入方法类似

以上两种办法均可实现在Power Builder下访问FoxPro数据库但两种方法之间有些不同之处

从系统需求来看第一种方式使用ODBC直接访问DBF文件只要Power Builder基本系统即可不需要安装数据库管理系统(DBMS)而第二种方式必须安装SQL Anywhere系统

从运行效率来看第一种方式速度要慢一些后一种方式稍快笔者在应用程序中比较了两种方式在速度上的差异将FoxPro系统中的一个有余条记录的数据库用第一种方式联接在数据窗口控制中显示(Retieve)记录需要秒钟左右后来又用第二种方式在SQL Anywhere 中新建一个表将这条记录导入表中联接显示记录需要时间为对另一个拥有万余条记录的FoxPro数据库直接使用ODBC联接显示的时间为秒钟

使用Power Builder 的主要优势体现在建立客户/服务器模式的系统上对于一般的单机系统规模较小的系统可能大多数人不会想到它但如果你觉得FoxPro太老土Visual FoxPro又太难学的的话不妨试试Power Builder

编辑推荐

ASP NET开发培训视频教程

Microsoft NET框架程序设计视频教程

[] []

               

上一篇:在PB中使用WINSOCK控件[1]

下一篇:在PB中使用FoxPro数据库的方法[1]