登录模块加载中...
会员投稿 投稿指南 今天是:
打印本页 | 关闭窗口 | 双击滚屏 您的位置首页>>网页制作学习园地>>数据库类>>其他相关>>浅谈在PB中创建数据库的方法
浅谈在PB中创建数据库的方法
来源:不详 ‖ 作者:未知 ‖ 点击: ‖ 时间:08-01-02 11:25:48 ‖ 【 】‖ 我要投稿

 
大连理工大学 李宏 01-6-25 下午 05:41:21

当我们把用PowerBuilder(以下简称PB)开发的数据库客户端应用程序交给用户后,还需要在用户的服务器端的数据库系统上进行一系列配置工作,如建立业务数据库和建表、视图、主键、索引等数据对象。只有正确配置了数据库服务器上的数据结构,应用程序才能正常运行。通常由经验丰富的数据库管理员,使用数据库系统提供的工具,手工或通过其他辅助工具,来完成数据库端的配置工作。本文以微软的SQL Server 2000为例,介绍用PB开发一个生成业务数据库及各种业务数据对象的程序,用户只要运行这个程序,就可以建立数据库端的数据结构。 程序功能及结构 程序的主要功能是建立客户应用程序运行时需要的业务数据库和在新建立的业务数据库上建立数据对象。 程序的输入信息通过4个单行编辑文本框获得: ●sle_database:新建立的数据库名称; ●sle_datafile:新建数据库所用的数据文件; ●sle_logfile:新建数据库所用的日志文件; ●sle_script:建立数据库中的数据对象所用的脚本文件。 完成程序功能的两个按钮分别为:cb_create 用于建立数据库;cb_table用于在新建的数据库中建立表、主键等数据对象。 在两个输出窗口中输出结果:dw_database 用于显示新建的数据库名称及数据文件;dw_objects用于显示通过cb_table按钮建立的数据对象。 具体实现 考虑到对于一个特定的应用,在系统分析阶段就已经确定数据库所需要的数据空间、日志空间的大小等一些系统物理信息,不会等到程序运行时由用户确定,所以这些信息不需要用户输入。数据库的名称一般来说也是固定的,用户输入的数据库名称(sle_database),可用来检查数据库系统中是否已经有同名的数据库。数据文件和逻辑文件的物理位置和名称,由用户根据服务器上的磁盘空间空闲情况输入(sle_datafile、sle_logfile),程序中给出了初始值,指定的文件位置是SQL Server通常的数据文件存放位置。 1.建立数据对象的脚本文件(sle_script) 该文件是普通的文本文件类型,其内容由建立表、主键等数据对象的数据定义语言(DDL)组成,其语法符合数据库系统的规则。例如,脚本test.sql内容为建立两个带有主键的表: create table xz_tj_all ( gxjg char(4) not null, nian smallint not null, yue tinyint not null, bz1 tinyint not null, bz2 tinyint not null, a1 integer , a2 integer , a3 integer , primary key (gxjg, nian, yue, bz1, bz2) ) create table xz_tj_4_1 ( gxjg char(4) not null, nian smallint not null, yue tinyint not null, bz1 tinyint not null, bz2 tinyint not null, a1 integer , primary key (gxjg, nian, yue, bz1, bz2) ) 2.窗口的Open事件 应用程序只用到一个窗口(w_create_database),在其Open事件中,对两个全局事务对象进行创建,并利用其中的一个事务对象(tr_sql)与系统数据库(Master)进行连接。此时还没有进行业务数据库的创建工作,业务数据库不存在,所以不能在这里进行与新建业务数据库的连接。w_create_database 的Open事件脚本如下: //创建与Master系统数据库相连接的事务对象 tr_sql = create transaction tr_sql.DBMS =“MSS Microsoft SQL Server 6.x” tr_sql.DataBase = “Master” //数据库系统管理员 tr_sql.LogPass = “sa” //服务器名 tr_sql.ServerName = “station4” //系统管理员口令 tr_sql.LogId = “sa” tr_sql.AutoCommit = False tr_sql.DBParm = “” //连接到Master系统数据库 connect using tr_sql; if tr_sql.sqlcode <> 0 then MessageBox (“数据库连接错误”,“不能连接到SQL Server数据库Master。请确认SQL Server数据库是否启动。~n~r” + “错

|<< << < 1 2 3 > >> >>|
加入收藏:  加入收藏夹  | 发送给好友:  发送给好友
责任编辑:admin
相关文章列表
2007-12-19
请文明参与讨论,禁止漫骂攻击。  
网友评论