PB期末测试题与参考答案_第1页
PB期末测试题与参考答案_第2页
PB期末测试题与参考答案_第3页
PB期末测试题与参考答案_第4页
PB期末测试题与参考答案_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PB期末测试题与参考答案考试时间:______分钟总分:______分姓名:______选择题(每题2分,共20分)1.下列哪个是PB中的有效日期型数据?()A."2023-12-31"B.20231231C.date(2023,12,31)D.2023/12/312.在PB中,窗口的open事件在哪个阶段触发?()A.窗口创建前B.窗口创建后C.窗口关闭时D.用户点击时3.以下哪个函数用于去除字符串两端的空格?()A.trim()B.strip()C.left()D.right()4.PB中数据窗口的Buffer类型不包括以下哪项?()A.PrimaryBufferB.FilterBufferC.DeleteBufferD.UpdateBuffer5.要在PB中执行SQL查询语句,应使用以下哪个对象?()A.transactionB.datawindowC.sqlcaD.messagebox6.PB中,以下哪个事件在用户点击按钮时触发?()A.clickedB.doubleclickedC.keydownD.paint7.在PB中,以下哪个属性用于设置数据窗口的显示对象?()A.textB.dataobjectC.visibleD.enabled8.PB中,以下哪个函数用于获取数据窗口的总行数?()A.getrow()B.rowcount()C.getitemstring()D.insertrow()9.以下关于PB面向对象特性的描述,正确的有()(多选)A.封装通过用户对象实现B.继承允许子对象重写父对象方法C.多态通过函数重载体现D.所有PB控件都支持继承10.在PB中,以下哪些是有效的SQL语句关键字?()(多选)A.SELECTB.INSERTC.MODIFYD.GROUPBY填空题(每题2分,共20分)11.要在数据窗口中获取当前选中行的行号,应使用函数______。12.PB中,用于显示消息框的函数是______。13.数据窗口的缓冲区中,存放用户删除数据的区域是______。14.在PB中,应用程序对象的名称属性是______。15.SQL语句中,用于分组的关键字是______。16.PB中,用于连接数据库的事务对象默认名称是______。17.数据窗口控件的属性中,用于设置数据源的对象是______。18.在PB中,用于获取字符串长度的函数是______。19.SQL语句中,用于条件查询的关键字是______。20.PB中,窗口的关闭事件名称是______。简答题(每题10分,共30分)21.简述数据窗口的“PrimaryBuffer”“FilterBuffer”“DeleteBuffer”的作用及区别。22.解释PB中“继承”和“多态”的概念,并举例说明在PB中的应用。23.描述PB应用程序发布的流程,并说明PBD、DLL和EXE文件的作用。编程题(30分)24.使用PB实现一个“学生信息管理系统”的“学生信息录入”功能:(1)创建数据窗口对象d_student,表结构为(学号varchar(10)、姓名varchar(20)、年龄int、性别char(2));(2)在窗口w_student中放置数据窗口控件dw_student,关联d_student;(3)编写“添加”按钮的Clicked事件代码,实现数据录入(学号不能为空,年龄需在15-30之间),并保存到数据库;(4)编写“取消”按钮的Clicked事件代码,清空输入并恢复初始状态。试卷答案选择题(每题2分,共20分)1.C解析思路:PB中日期型数据需使用date()函数构造,选项C是标准语法,其他选项不符合日期类型定义。2.B解析思路:PB窗口open事件在窗口对象创建后、显示前触发,对应选项B。3.A解析思路:trim()函数专门用于去除字符串首尾空格,是PB标准函数。4.D解析思路:数据窗口只有三种缓冲区:Primary、Filter、Delete,没有UpdateBuffer。5.C解析思路:sqlca是全局事务对象,用于执行SQL操作,选项C正确。6.A解析思路:clicked事件是按钮的标准点击事件,选项A正确。7.B解析思路:dataobject属性指定数据窗口对象名称,选项B正确。8.B解析思路:rowcount()函数返回数据窗口的总行数,选项B正确。9.A,B,C解析思路:A封装通过用户对象实现;B继承允许子对象重写父对象方法;C多态通过函数重载体现;D所有PB控件都支持继承错误,标准控件不支持。10.A,B,D解析思路:SELECT、INSERT是SQL关键字,GROUPBY是分组关键字,MODIFY不是标准SQL关键字。填空题(每题2分,共20分)11.getrow()解析思路:getrow()函数返回当前选中行的行号,是PB标准函数。12.messagebox()解析思路:messagebox()函数用于显示消息框,是PB标准函数。13.DeleteBuffer解析思路:DeleteBuffer存储被删除的数据行,是数据窗口的缓冲区类型。14.appname解析思路:应用程序对象的appname属性存储应用程序名称。15.GROUPBY解析思路:GROUPBY是SQL语句中用于分组的关键字。16.sqlca解析思路:sqlca是默认的事务对象名称,用于数据库连接。17.transobject解析思路:transobject属性指定事务对象,用于设置数据窗口的数据源。18.len()解析思路:len()函数返回字符串长度,是PB标准函数。19.WHERE解析思路:WHERE是SQL语句中用于条件查询的关键字。20.close解析思路:close是窗口的关闭事件名称。简答题(每题10分,共30分)21.参考答案:-PrimaryBuffer:存放当前有效数据,可修改并保存到数据库。-FilterBuffer:存放满足过滤条件但未显示的数据,只读不可编辑。-DeleteBuffer:存放被用户删除的数据,可恢复但未提交删除。区别:数据状态不同(有效/过滤/删除),操作权限不同(可修改/只读/可恢复)。解析思路:解释每个缓冲区的用途,强调数据状态和操作权限的差异。22.参考答案:-继承:子对象继承父对象的属性和方法,可重写部分功能。例如,用户对象继承标准按钮对象,重写clicked事件。-多态:不同对象对同一消息有不同响应,通过函数重载实现。例如,多个按钮的clicked事件执行不同操作。解析思路:定义概念,结合PB实例说明继承和多态的实现方式。23.参考答案:流程:编译生成PBD/DLL文件,打包EXE主执行文件,发布安装包。-PBD:动态库文件,存储PB对象定义,运行时加载。-DLL:外部库文件,提供额外功能支持。-EXE:主执行文件,启动应用程序入口。解析思路:简述发布步骤,解释各文件的作用和依赖关系。编程题(30分)24.参考答案:(1)数据窗口创建:使用DataWindowPainter创建d_student,SQL语句:SELECT学号,姓名,年龄,性别FROMstudent。(2)控件关联:在窗口w_student中放置dw_student控件,设置dataobject属性为d_student。(3)“添加”按钮Clicked事件代码:```pascalintegerli_ret,li_agestringls_id,ls_name,ls_sexls_id=dw_student.getitemstring(dw_student.getrow(),"学号")ls_name=dw_student.getitemstring(dw_student.getrow(),"姓名")li_age=dw_student.getitemnumber(dw_student.getrow(),"年龄")ls_sex=dw_student.getitemstring(dw_student.getrow(),"性别")ifisnull(ls_id)ortrim(ls_id)=""thenmessagebox("提示","学号不能为空!")returnendififli_age<15orli_age>30thenmessagebox("提示","年龄需在15-30之间!")returnendifli_ret=dw_student.insertrow(0)dw_student.setitem(li_ret,"学号",ls_id)dw_student.setitem(li_ret,"姓名",ls_name)dw_student.setitem(li_ret,"年龄",li_age)dw_student.setitem(li_ret,"性别",ls_sex)li_ret=dw_student.update()ifli_ret=1thencommit;messagebox("成功","数据添加成功!")dw_student.retrieve()elserollback;messagebox("错误","数据

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论