版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章数据库画板
数据库(表)及其主键、外键、索引的建立和定义是进行实际开发工作的第一步,PowerBuilder的开发工作几乎都是围绕数据库展开的。在建立数据库(表)之前,开发人员应进行详细的系统分析,其中包括该建哪些表和表的字段及数据类型、宽度以及主键、外键、索引的规划等。在数据库画板内,可以执行数据库的大部分数据管理功能,主要包括以下内容:建立数据表、主键、外键、索引列、修改属性、数据视图和执行交互式SQL命令等。3.1数据表操作数据库中的数据一般都存储在表中,数据表(Table)是一个实体,有唯一的名称,表是由行与列组成的,每一行都是对这种实体完整性的描述。数据表是数据存储的基本单元,它可以看作一组行和列编号的数据集合,在关系数据表中,行被称为记录,而列则被称为字段。数据表中常用概念如下:表、字段、记录、主键、关系。3.1.1创建数据库和数据库表
PowerBuilder自带一个小型关系型数据库管理系统“AdaptiveServerAnywhere”,支持多种平台应用。
【例3.1】创建数据表,存储表3.1中的信息,数据库表名定义为:“boy”。3.1.2数据库画板工具栏数据库画板工具栏有“PainterBar1”、“PainterBar2”和“PainterBar3”三个,其中“PainterBar1”主要是针对于数据库表进行操作,主要是:Connect、Disconnect、Save、CreateTable、DropObject等。“PainterBar2”主要是对“InteractiveSQL”交互式SQL语句进行操作,主要是:Cut、Copy、Paste、PasteSQL、SelectALL、Comment等。“PainterBar3”主要是针对记录进行操作,主要是:Retrieve、SaveChanges、InsertRow、First、Next等。3.1.3Layout视图窗格在数据库画板中,用鼠标右键单击表,在弹出的快捷菜单中选择“AddtoLayout”子菜单项,则PB系统将把该表以图形的方式直观地显示在“Layoutobject”视图中。“Layout”视图中列出了数据表、列、主键、索引和外键等信息,鼠标右击其中任何一个对象,并在弹出的快捷菜单中选择“Properties”菜单项,都可对此对象进行编辑。3.2数据表设计在数据库画板中,有多种操作方法可以对数据库的表进行修改与维护,建立数据表的另一种方法是:右击数据库资源“Tree”中的“Tables”项,并在弹出的快捷菜单中选择“NewTables...”菜单项。3.2.1数据表属性窗格在数据库画板对象的“Objects”视图中,鼠标右击数据表,在弹出的快捷菜单中选“Properties”菜单项,可打开表的属性视图窗格。在表的属性视图中,可以设定此数据表的相关属性,共有四个标签页:DataFont属性、General属性、HeadingFont属性、LabelFont。设置完成后,可以单击工具栏中的“Save”图标保存修改。3.2.2主键、外键和索引表的主键(PrimaryKey)是能够唯一标识每一行数据的一列或若干列的集合。定义表的主键可以保证表的引用完整性,如果数据库管理系统(DBMS)支持主键(绝大多数DBMS都具备此项功能),就应该为每个数据表定义各自的主键。外键(ForeignKey)是指表中的一个或多个列与其它表中的主键建立的对应关系,在关系数据库中,可以利用外键连接多个表,保证数据库的参照完整性。外键的建立步骤如下:对应规则有三类,它们的含义分别是:DisallowifDependentRowsExist(RESTRICT)DeleteanyDependentRows()CASCADESetDependentColumnstoNULL(SETNULL)
索引的创建与主键类似。3.2.3列属性维护在定义数据表时,同时也定义了列的类型、初值等基本属性。在数据库画板中还可以定义列的其它属性,包括显示格式、编辑风格、有效性规则等。列的属性定义方式与表的属性类似,该属性视图共有五个标签页:General、Headers、Display、Validation、EditStyle。3.2.4扩展属性列的“DisplayFormats”、“EditStyles”、“ValidationRules”属性在表的属性窗口中只能引用而不能对其定义,在数据库画板中选择“View/ExtendedAttributes”菜单项,将打开扩展属性(ExtendedAttributes)视图,在此视图中可以定义列的显示格式、编辑风格和验证规则。
自定义显示格式(DisplayFormats)自定义编辑样式(EditStyle)自定义有效性规则(ValidationRules)3.3数据表数据维护当定义了数据库的表后,在PowerBuilder开发环境中也能够方便地输入数据。数据库画板提供了如下三种界面来编辑数据,分别为网格格式、列表格式和自由格式,它们的差别仅在于显示数据方式的不同。3.3.1数据录入以表“boy”为例,在对象视图中选中表“boy”,单击“PainterBar1”工具栏的“Datamanipulationgrid”工具按钮,以网格状来显示数据。单击“PainterBar3”工具栏的“InsertRow”工具按钮,插入一条记录,单击“DeleteRow”工具按钮删除当前记录,单击工具栏“PainterBar3”中的“SaveChanges”工具按钮保存数据。3.3.2数据排序与过滤当希望以某种顺序查看数据时,可以指定数据的排序方式:首先进入数据表数据的编辑界面,然后选择“Rows/Sort”菜单项,弹出“SpecifySortColumns”对话框,用鼠标左键按住左边的“SourceData”中的列并拖动到右边Columns列表框中,然后选择排序方式。当浏览部分数据时,可以指定过滤条件对表中数据进行筛选。步骤如下:首先将焦点切换到“Result”视图,然后选择“Rows/Filter”菜单项,弹出“SpecifyFilter”对话框。输入过滤条件。单击“Verify”按钮验证过滤表达式是否正确。单击“OK”按钮关闭对话框,满足条件的数据被显示出来。3.3.3建立视图视图是数据库应用系统中十分重要的组成部分,通过视图可以进一步简化应用程序编程工作,使其更加简洁、灵活、方便、有效。视图是一种非常特殊的虚拟表,它可以象表一样地被访问和使用,但视图本身并不是真正的表,并不存在视图这种物理结构,它的数据只是来自一个或多个数据库中的表或视图。3.3.4数据导入与导出在开发环境中可以将数据库表中的数据导出到文件中。也可以将保存在文本文件或“DBF”库文件中的数据通过数据库画板导入到数据库中。导出数据导入数据3.3.5设置数据显示格式
在数据库画板中,设置列的显示格式的步骤如下:在数据库画板的对象(Objects)视图下,展开树视图,显示某个表的列清单。鼠标右击要指定显示格式的列,在弹出的快捷菜单中选择“Properties”菜单项,在列(Columns)视图中选择“Display”标签页。在“DisplayFormat”下拉列表框中选一个显示格式。单击画板工具栏上的“Save”按钮。定义了某个显示格式后,可以根据需要对它进行修改。操作步骤如下:打开数据库画板。如果扩展属性(ExtendedAttributes)视图没有显示,选择“View/ExtendedAttributes”菜单项打开扩展属性视图,否则单击该视图的标签页。在扩展属性视图下,打开显示格式列表。鼠标右击要修改的显示格式名称,在弹出的快捷菜单中选择“Properties”菜单项。在显示格式视图中修改已定义的显示格式。3.4SQL命令
SQL命令是数据库发布命令的交互标准,适用于各种公开发行的数据库系统,PowerBuilder的数据库画板支持直接使用SQL命令进行数据库表的维护。3.4.1SQL命令类型
SQL(StructuredQueryLanguage)称为结构化查询语言,主要功能就是同各种数据库建立联系,用来执行各种各样的操作,例如更新数据库表中的数据、从数据库表中提取数据等。
SQL语句有很多,功能齐全,可以分为四大类:数据定义数据查询数据更新数据控制3.4.2SQL数据表命令
SQL命令可以在数据库画板中执行,也可以在SybaseCentral或数据库管理工具“InteractiveSQL”中执行。定义类的SQL命令(CREATE、DROP、ALTER等语句)可以对数据库、数据表、索引、视图和存储过程等进行操作。这些命令一般都通过数据库画板来完成。
【例3.2】通过SQL语句创建数据库
【例3.3】创建个人信息表(person)
【例3.4】删除表:person【例3.5】修改表person的表结构,在表中新增一列备注(Notes)。【例3.6】修改表Boy的表结构,在表中新增一列部门编号(dp)。【例3.7】查询表boy。【例3.8】在“boy”表中取id=”00101”记录的工资数值,存入实型变量X中。【例3.9】查看“boy”中的所有数据,并要求按工资升序排列。【例3.10】查找“boy”表中工资大于2000元的员工记录。【例3.11】查找“boy”表中工资大于2000元或性别为“女”的员工记录。【例3.12】查找dpt表中所在部门为01、03和05的记录。【例3.13】查询会计系(01)的所有人员。【例3.14】查找“王昭”所在部门所有人员的信息。【例3.15】查询目前没有人员的部门。【例3.16】查找姓“王”的人员的信息。【例3.17】统计实际总人数。【例3.18】统计01部门的平均工资。【例3.19】统计各部门的实际总人数。3.4.4数据更新语句
SQL命令经常通过Insert、Delete和Update命令对数据表进行数据修改。在数据修改过程中必须注意数据表的主键不能有“值重复”和“空值”等特性。INSERT语句:用于向数据库表中添加新的数据行。
【例3.20】给boy表中插入一个员工记录。
【例3.21】批量插入记录。UPDATE语句:用于更新或修改数据库中满足规定条件的现有记录。
【例3.22】将boy表中的编号为“00101”的记录工资修改为:2000元。
【例3.23】将boy表中的女性的工资增加200元。DELETE语句:用于删除指定数据表中满足条件的记录。
【例3.24】在boy表中,删除编号为“00102”的记录。3.4.5数据库提交命令数据库提交撤消属于SQL的数据控制类命令,在PowerBuilder中,经常被用于控制数据库的数据状态。COMMIT语句:用于完成数据库的物理修改。ROLLBACK语句:用于放弃自上一个COMMIT、ROLLBACK或CONNECT操作之后的所有数据库操作。CONNECT语句:用于在程序中将指定的事务对象与数据库连接。DISCONNECT语句:中断与数据库的连接
3.4.6获取SQL命令前面的建表过程中都是利用图形界面来完成的,PowerBuilder实际上是将建立数据库的SQL命令传递到了后台运行的DBMS中。
【例3.25】获取建表的SQL命令。
【例3.26】使用SQL命令进行数据查询。3.4.7交互执行SQL命令编程时经常会遇到要写一些SQL语句来测试一下数据及修改表中的数据。选择“View/InteractiveSQL”菜单项进入“InteractiveSQL”视图(ISQL)。直接执行:直接在“ISQLSession”视图中,输入SQL语句。读入SQL语句:在“InteractiveSQL”视图中可读入文件中的SQL语句。3.4.8自动生成SQL命令
PowerBuilder提供了图形化的SQL语句生成工具,就是SQL画板。SQL画板可以通过类似于创建数据窗口对象的图形界面生成SQL语句,并且直接粘贴到脚本环境中,而不必花过多时间去关注SQL语法。PowerBuilder的SQL语句画板能够构造三类语句:游标
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 沪科版八年级物理全一册《2.1声音的产生与传播》同步测试题含答案
- 高一化学第四单元非金属及其化合物第四讲氨硝酸硫酸练习题
- 2024届河南省淇县某中学高考模拟试卷(化学试题文)试卷含解析
- 2024高中地理第4章区域经济发展第2节第2课时问题和对策学案新人教版必修3
- 2024高中语文第四单元创造形象诗文有别赏析示例过小孤山大孤山学案新人教版选修中国古代诗歌散文欣赏
- DB37-T 5307-2024 住宅小区供水设施建设标准
- 肩周炎中医诊疗指南
- 深圳城市的发展历程
- 2025版:劳动合同法企业合规培训及风险评估合同3篇
- 三讲课件知识课件
- 2025年工程合作协议书
- 2025年山东省东营市东营区融媒体中心招聘全媒体采编播专业技术人员10人历年高频重点提升(共500题)附带答案详解
- 2025年宜宾人才限公司招聘高频重点提升(共500题)附带答案详解
- 2024年电商平台入驻服务合同
- 2024年度政府采购代理服务合同-医疗卫生设备采购项目3篇
- GJB9001C版标准培训课件
- 船舶防火与灭火(课件)
- 七、监理工作重点、难点分析及对策
- 面膜中蓝铜肽经皮渗透性和改善皮肤衰老作用研究
- 湖北省荆州市八县市2023-2024学年高一上学期1月期末考试 化学 含解析
- KAT1-2023井下探放水技术规范
评论
0/150
提交评论