重庆理工大学会计信息化2习题.docx
《重庆理工大学会计信息化2习题.docx》由会员分享,可在线阅读,更多相关《重庆理工大学会计信息化2习题.docx(17页珍藏版)》请在冰豆网上搜索。
![重庆理工大学会计信息化2习题.docx](https://file1.bdocx.com/fileroot1/2023-1/26/eb566eab-4a92-499f-8c32-f12b2f3eb2c0/eb566eab-4a92-499f-8c32-f12b2f3eb2c01.gif)
重庆理工大学会计信息化2习题
一、单项选择题
1.PB系统默认的工作空间(Workspace)文件的扩展名为(A)。
A、.pbwB、.htmC、.pbtD、.dbf
2.PB编写的所有对象放在扩展名为(B)的文件中。
A、.dbB、.pblC、.pbtD、.log
3.使用窗口的继承,后代窗口中不允许(B)。
A、隐藏继承的控件B、删除继承的控件C、新增控件D、修改继承的控件
4.S=“123”+“246”的结果是(C)。
A、369B、“369”C、“123246”D、123456
5.执行语句ret=messagebox(“例题”,“是否存盘”,question!
yesnocancel!
3),出现了提示框时点击NO按钮,变量ret的值为:
(B)。
A、1B、2C、3D、0
6.一个可以独立运行的PB应用程序必须具备的对象是(C)。
A、window对象B、datawindow对象C、application对象D、pbl对象
7.PB应用程序运行时首先执行的代码是(B)对象的open事件。
A、windowB、applicationC、groupboxD、statictext
8.以下(A)种变量的作用范围最小。
A、局部B、共享C、实例D、全局
9.以下(D)种变量的作用范围最大。
A、局部B、共享C、实例D、全局
10.integer一个整型数据用来存储整数,整数包括(D)。
A、正整数B、正整数和零C、正整数和负整数D、正整数,负整数和零
11.powerBuilder是(B)。
A、操作系统B、新一代数据库开发工具
C、C/J结构D、分布式计算模式
12.建立PowerBuilder应用程序时,首先应该创建的对象是(D)。
A.菜单B.窗口对象
C.数据窗口对象D.应用对象
13.Powerbuilder的事件和函数统称为(A)。
A、方法B、对象C、事件D、函数
14.在PowerBuilder中有一种类型的窗口可以显示在父窗口的前面,当它被关闭后,才可以对父窗口进行操作。
这种类型的窗口是(A)。
A、responseB、child
C、mainD、popup
15.在PowerBuilder中有一种类型的窗口是默认的窗口类型。
这种类型的窗口是(C)。
A、responseB、child
C、mainD、popup
16.(D)类型的窗口可以在其窗口的内部管理其它窗口。
A、responseB、child
C、mainD、Mdi
17.要使命令按钮cb_1“变灰”的程序代码是(D)。
A、cb_1.visible=trueB、cb_1.visible=false
C、cb_1.enabled=trueD、cb_1.enabled=false
1.在定义检索条件时,如果条件中的值在程序运行时才能确定,那么就需要使用检索参数,它是在SLQselect语句的(A)子句中使用的参数。
A、whereB、selecteC、fromD、groupby
2.从学生表查询姓名姓名,出生日期使用SQL语句(C)姓名,出生日期from学生。
A、insertB、deleteC、selectD、update
3.在应用中连接数据库的时候默认的事务对象是(D)。
A.SQLCodeB.SQLErrTextC.DBMSD.SQLCA
4.数据库连接成功与否可以通过事务对象sqlcode的属性得知,成功返回的数值是(B)。
A.1B.0C.100D.-1
5.连接数据库的脚本一般是写在(B)的open事件里面。
A.windowB.applicationC.menuD.datawindow
6.ASA数据库中,日志文件的扩展名为(C)。
A、.dbcB、.dbfC、.logD、.scx
7.一个物理数据可以定义多少个ODBC数据源(D)。
A、1个B、2个C、10个D、若干个
8.4powerbuilder连接多种不同数据库时一般是通过(B)。
A、物理数据库B、ODBC数据源C、ASA数据库D、任意数据库
9.表结构定义好后,只有给表设置了(A),才能向表中添加数据。
A、主键B、外键C、候选索引D、普通索引
10.数据库表中,一个表的主键可以是(C)。
A、一个列B、多个列的组合C、一个列或多个列的组合D、不需要列
11.索引是在数据库中实现表中数据逻辑排序的方法,建立索引的列可以是(C)。
A、一个列B、多个列的组合C、一个列或多个列的组合D、任意列
12.创建表后,能够进行删除的是(D)。
A、主键B、索引和外键C、外键D、主键、索引和外键
13.ASA数据库表中,能够作为主键的列,其NULL值为(B)。
A、yesB、noC、yes或noD、不填
14.powerbuilder和数据库的链接是建立在(B)之上。
A、应用程序B、驱动程序C、硬件D、软件
15.在新建并连接数据库时,不必有的操作是(D)。
A、创建ASA数据库B、创建ODBC数据源
C、配置DBProfileD、创建表
16.database画板是专门用来(A)。
A、管理数据库B、创建和删除ASA数据库
C、连接数据库D、管理表
17.删除数据源,不会影响(C)。
A、连接数据库B、DBProfile配置C、物理数据库D、在PB中操作数据库
18.在表中增加新数据的SQL语句为(D)。
A、putB、putintoC、udateD、insertinto
19.从表中删除数据的SQL语句为(B)。
A、selectB、deleteC、dropD、dropfrom
20.表中更新表中数据记录的SQL为(D)。
A、update···getB、update···fromC、update···intoD、update···set
21.selectcount是查询(A)。
A、符合条件的数据共有几条B、多个表格中值相同的数据
C、符合条件的数据内容D、数据类型相同的字段
22.建立数据库表的SQL语句为(D)。
A、createfromB、deletetableC、dropfromD、createtable
23.查询所有职员信息,正确的SQL语句是(C)。
A、Select*fromzyxxb:
B、Selectcount(*)fromzyxxb:
C、Selectcount(*)fromzyxxb;
D、Select*fromzyxxb;
24.将编号为“005”的职员的登录密码改为“456”,正确的是(A)。
A、Updatezyxxbsetdlmm='456'wherebh='005'
B、Updatezyxxbfromdlmm='456'wherebh='005'
C、Updatezyxxbintodlmm='456'wherebh='005'
D、Updatedlmm='456'wherebh='005'
25.selectavg()计算的是(B)。
A、总和B、平均C、最大值D、最小值
26.UPDATE语句为更改某个数据列的值,设定参数值需要加单引号的是(B)。
A、数值型B、字符型C、枚举型D、布尔型
27.数据库表中数据的常用来源可以是(D)。
A、直接输入B、ini文件导入C、excel表导入D、以上均可以
28.delete用于删除(C)。
A、数据库B、数据库中的表C、表中的数据D、以上均可以
29.查询所有部门信息,表示正确的是(B)。
A、SelectB、Select*C、SelectallD、select全部
30.创建数据窗口时可以不与数据库连接而直接选用的数据源是(D)。
A、quickselect数据源B、query数据源
C、storeprocedure数据源D、external数据源
31.设置数据窗口dw_1第3行startdate字段为2003-1-14,程序为(A):
A、dw_1.setitem(3,”startdate”,2003-1-14)
B、dw_1.setitem(3,2003-1-14,”startdate”)
C、dw_1.setitemdate(3,”startdate”,2003-1-14)
D、dw_1.setitemdate(3,2003-1-14,”startdate”)
32.(D)表现风格可以在一个数据窗口对象中包含多个预先定义好的数据窗口。
A、GroupB、CrosstabC、N-UpD、Composite
33.在设计数据窗口时,如果要在检索出的数据的最后显示统计结果,应把统计公式放在数据窗口的(D)。
A、detail区域B、footer区域C、grouptrailer区域D、summary区域
34.按钮的作用是删除数据窗口控件dw_1中显示内容的当前行,那么其clicked事件的代码应是(B)。
A、Dw_1.deleterow()B、Dw_1.deleterow(0)
C、Dw_1.deleterow(getrow())D、Dw_1.deleterow(thisrow())
35.下列关于数据窗口控件函数retrieve()的论述正确的是(A)。
A、返回值为long型,表示检索到数据的记录数
B、返回值为integer型,表示检索到数据的记录数
C、返回值为long型,表示数据表中的记录数
D、返回值为integer型,表示数据表中的记录数
36.数据窗口控件的DataObject属性的数据类型是(A)。
A、stringB、AnyC、datawindowD、枚举类型
37.数据窗口可以用图形表示数据,其图形组成元素不包含( D )。
A、Series B、Categories C、Values D、Group
38.在访问数据库时,为了不显示出错误信息,可以让数据窗口控件的(C)事件的返回值为1。
A、ErrorB、EditchangedC、DBerrorD、ItemError
39.在数据窗口中当用户修改了字段,然后移走焦点、但数据未能通过该列的有效性检查时会触发(B)事件。
A、ErrorB、ItemErrorC、ItemChangedD、DBError
40.一般来讲,建立数据窗口时,所选择的数据风格Grid用于建立( B )比较合适。
A、数据输入窗口 B、数据列表窗口 C、标签窗口 D、分组窗口
41.在PB的DataWindow的设计视图,下列(A)Band显示DataWindow的标题栏。
A、Header B、Detail C、Summary D、Footer
42.以下不属于数据窗口类型的是(A)。
A.TableB.FreeformC.GridD.Label
43.下面那类数据窗口可通过饼图、柱形图等图形方式直观地展示数据(A)。
A.GraphB.GridC.GroupD.RichText
44.在数据窗口中可同时更新(D)张表的数据。
A.0B.1C.2D.若干
45.在数据窗口中建立下拉窗口所选择的风格类型是(B)。
A.checkboxB.dropdowndwC.dropdownlistboxD.editmask
46.下列哪个不属于数据窗口的数据源(B)
A.quickselectB.selectC.sqlselectD.query
47.数据窗口中要对数据进行排序是用rows菜单中的(C)命令。
A.ascendingB.whereC.sortD.filter
48.在数据窗口控件dw_1中返回当前行的命令格式是(C)。
A.dw_1.deleterow()B.dw_1.insertrow()
C.dw_1.getrow()D.dw_1.setrow()
49.要建立数据窗口和数据窗口控件dw_1的联系要编写以下(C)驱动代码。
A.dw_1.sharedata()B.dw_1.retrieve()
C.dw_1.settransobject(sqlca)D.dw_1.dataobject()
50.清除数据窗口控件dw_1中所有行的命令是(C)。
A.dw_1.deleterow()B.dw_1.delete()
C.dw_1.reset()D.dw_1.deleteall()
51.数据窗口控件dw_1中删除当前行的命令是(B)。
A.dw_1.deleterow
(1)B.dw_1.deleterow(0)
C.dw_1.deleterow()D.dw_1.deleterow(this)
52.要得到数据窗口中某行某列对应的值使用的是(A)簇函数。
A.getitemB.getstringC.getrowD.get
53.类似于excel的表格型数据窗口风格是(D)。
A.graphB.freeformC.labelD.grid
54.为了建立数据窗口和数据窗口控件的关联,要在数据窗口控件的(D)属性里输入数据窗口的名称。
A.nameB.titleC.tagD.dataobject
55.在数据窗口控件dw_1中增加一条空记录的脚本是(C)。
A.dw_1.insertrow(row)B.dw_1.insertrow()
C.dw_1.insertrow(0)D.dw_1.insetrow
(1)
二、判断题
1.PB标识符不区分大小写。
(√)
2.Instance变量的作用范围是所在对象的全部事件和函数。
(×)
3.messagebox()函数的返回值Integer型的。
(√)
4.事件只能由系统触发而不能由用户触发。
(×)
5.在PB中,按钮控件上的文字颜色是不能改变的。
(√)
6.在PB中,任何控件和对象都有visible属性和enabled属性。
(×)
7.窗口控件的visible属性决定了控件的可视性;enabled属性决定了控件的可用性。
(√)
8.全局变量不可以在应用程序的任何地方访问。
(×)
9.局部变量作用范围是声明该变量的脚本范围内。
(√)
10.PB中创建的窗口、菜单、数据窗口等都是对象。
(√)
11.PB中对象要存放在PBL文件中,但应用对象除外。
(×)
12.PB只能访问ASA数据库,而不能访问Oracle和MSSQLServer。
(×)
13.在用户的应用程序中是不需要DBProfile的,它只在开发环境中起作用。
(√)
14.SQLCA.SQLcode=0,说明连接数据库失败。
(×)
15.SetTransObject(transaction)中的transaction必须是SQLCA。
(×)
16.用PB开发的应用程序不可以同时访问多个数据库系统。
(×)
17.在PB中,删除数据源不会对磁盘上的数据库产生影响。
(√)
18.连接数据库时,sqlcode返回的值是100表示没有找到数据库。
(√)
19.要查看数据库连接失败的原因可以调用事务对象的sqlerrtext属性进行查看。
(√)
20.在应用中连接数据库默认的事务对象是sqlcode。
(×)
21.PowerBuilder提供的数据库通用接口包括ODBC接口。
(√)
22.ODBC是指开放式数据库连接。
(√)
23.ASA数据库默认的USEID是DBA,密码是SQL。
(√)
24.删除数据源,将影响物理数据库。
(×)
25.在Pb程序中,同一时刻可以连接多个不同的物理数据库。
(√)
26.外键定义以后,可以用视图的方式来展示表之间的关系。
(√)
27.主键一经建立,就不能删除。
(×)
28.视图可以像表一样的访问和使用,所以视图就是表。
(×)
29.表结构的列定义完后,系统会自动保存。
(×)
30.INSERT语句中,插入数据的数据类型不必与表设计中对应字段的数据类型吻合。
(×)
31.selectsum(c)是计算指定字段c的总和,所选字段必须是可数的数字类型。
(√)
32.数据窗口就是数据窗口对象。
(×)
33.Quickselect数据源不能生成计算列,也不支持分组。
(√)
34.数据窗口不能访问数据库之外的数据(×)
35.SetTransObject(transaction)中的transaction必须是SQLCA。
(×)
36.数据窗口对象主要用来展示数据并允许用户增删改数据,数据窗口控件用来放置数据窗口对象,数据窗口对象必须通过数据窗口控件才能使用。
(√)
37.数据窗口对象只有grid和freeform两种类型。
(×)
38.在数据窗口中不能对数据进行增删改。
(×)
39.要对数据窗口的数据按列进行统计是在footer区域进行操作。
(×)
40.数据窗口中建立的下拉窗口也是属于数据窗口。
(√)
41.在设计数据窗口对象的过程中,以通过预览(Preview)查看数据窗口的运行效果,而且看到的结果就是实际运行时的结果。
(√)
42.数据窗口只有quickselect和sqlselect两种数据源。
(×)
43.建立数据窗口可以同时选取两张表的数据。
(√)
44.要建立数据窗口和数据窗口控件之间的关联只需在dataobject属性里面写入数据窗口名称即可,无需其他操作。
(×)
45.数据窗口中的过滤和排序其实完全一样。
(×)
三、综合题
1.试说明Local变量和Instance变量的区别?
答:
在事件和函数中定义的变量都是Local变量,它的作用范围仅在所在的事件和函数内,在别的事件和函数中不起作用。
Instance变量是一种特殊的变量,它的作用范围是不仅在对象的全部事件及函数,而且包括该对像的所有控件的事件及函数。
2.请说明PB的Parent、This代词的作用是什么?
答:
Parent用于引用当前对象的父对象或包含当前对象的对象,它可以用于窗口中的控件、用户对象和菜单。
This用于引用包含当前程序的对象,即引用当前对象自身的属性或事件等。
1.举例说明adaptiveseveranywhere数据库的操作步骤
答:
(1)单击工具栏上的database图标
(2)在弹出的database画板中,打开objects子窗口,展开“ODBODBC”项下的utilities目录
(3)双utilities目录下的“CreateASAdatabase”项,弹出“Createadaptiveserveranywheredatabase”对话框
(4)单击“Browse……”按钮,弹出“createDatabase”对话框,在对话框中选择\mypbex目录,在文件名一栏中输入数据库名称“mydatabase”,单击保存,返回“Createadaptiveserveranywheredatabase”。
(5)使用默认的用户usetid项“dba”和默认的口令password项“sql”,单击OK按钮。
PB在\mypbex目录下创建一个ASA数据库mydatabase.db,同时,自动为数据库配置ODBC和DBProfile,并且已经连接到新建数据库
2.编写下面修改密码窗口修改按钮的代码:
要求:
sle_xmm和sle_qrmm中的数据要相同;原密码不能输入错误;密码修改成功或失败都要有弹窗信息提示。
(用户名g_yhm和密码联系数据库表c_oper中的yhm和psdl两列。
)
答:
stringr_ymm,r_xmm,r_qrmm,r_password,r_yhm
integerNet
r_ymm=trim(sle_ymm.text)
r_xmm=trim(sle_xmm.text)
r_qrmm=trim(sle_qrmm.text)
selectyhm,psdinto:
r_yhm,:
r_password
fromc_operwhereyhm=:
g_yhm;
iftrim(r_password)<>r_ymmthen
messagebox('提示','原始密码错误!
请重新输入!
')
return
endif
ifr_xmm<>r_qrmmthen
messagebox('提示','两次密码输入不一致!
请重新输入!
')
return
endif
updatec_opersetpsd=:
r_xmmwhereyhm=:
g_yhm;
ifsqlca.sqlcode=0then
commit;
messagebox('提示','密码更改成功!
')
sle_ymm.text=''
sle_xmm.text=''
sle_qrmm.text=''
else
rollback;
messagebox('提示','密码更改失败!
')
endif
3.为下面的代码改错并说明该段代码的功能:
(数据库名为test)
SQLCA.DBMS="ODBC"
SQLCA.AutoCommit=True
SQLCA.DBParm="ConnectString='DSN=test1;UID=sql;PWD=dba'"
connect;
ifsqlca.sqlcode<>1then
MessageBox("数据库连接错误",sqlca.sqlerrtext)
return
endif
正确的代码:
SQLCA.DBMS="ODBC"
SQLCA.AutoCommit=False
SQLCA.DBParm="ConnectString='DSN=test;UID=dba;PWD=sql'"
connect;
ifsqlca.sqlcode<>0then
MessageBox("数据库连接错误",sqlca.sqlerrtext)
return
endif
4.下面是一段登录窗口某控件判断用户合法性的代码,请改正有关代码的错误:
stringr_pass,integerr_count
g_oper_code=sle_oper_code.text
r_pass=sle_password.text
selectcount(*)to:
r_countfromc_op