A、3
B、4
C、2
D、5
第6题
实验(第十周) 函数(26分) (互评中碰到雷同的实验报告请给以下各项均0分) (评分时遵循“总分公平合理”,比如打分过程中出现觉得应该给0.5,那么可以第一个0.5进位,第二个0.5舍去,依次类推;或第一个0.5舍去第二个0.5进位等等) 1. 实验目的(1分) (1) 了解PL/pgSQL程序的结构 (2) 掌握简单的PL/pgSQL程序的编写 (3) 掌握PL/pgSQL函数的调用方法 (3 条及以上的得满分;否则按不完整比例扣分) 2. 实验原理(2分) (自己总结与本次实验内容对应的视频、教材上的知识点,2 条及以上得满分,2 条及以上 得满分;否则按不完整比例扣分) 3. 实验内容(1分) (1) 编写简单的PL/pgSQL函数,输入参数、定义变量、输出相应结果 (2) 编写PL/pgSQL函数,通过函数对数据表进行修改。 (3) 调用已编写的PL/pgSQL函数。 (3 条及以上的得满分;否则按不完整比例扣分) 4. 实验作业(3+7=10分) 数据表的建立及数据插入采用SQL语句,其余要求均通过创建函数和调用函数实现。 (1) 创建一个函数,输入字符串a,输出该字符串从第10位开始的连续8个字符的大写形式。需验证:当字符串a 为‘learning database is interesting’, 返回‘DATABASE’。(3分) (函数代码逻辑正确得1分,输出字符串为大写字母形式得1分,输出‘database’得1分,满足以上三者得满分3分) (2) 在examiner表基础上,依据要求完成函数的创建与调用。(2+3+2=7分) a. 创建examiner表,按表4-1插入数据。(2分) (表创建正确,得1分;表数据插入正确,得1分;满足以上两者得2分) 表4-1 examiner erid(int, PK) ername(varchar(20)) erdepa(varchar(20)) ersalary(int) 1 杨幂幂 信科 3000 2 朱迅迅 英语 2000 3 宋佳佳 化学 2000 4 刘诗诗 信科 3000 b. 创建一个函数,实现给考官加薪1000的功能。若考官存在于examiner表中,返回‘加薪成功’;若考官不在表中,则返回‘该考官不存在’。 需验证:给考官杨幂幂加薪,返回‘加薪成功’;给考官关彤彤加薪,返回‘该考官不存在’。(3分) (函数代码逻辑正确得1分;调用函数给杨幂幂考官加薪,返回‘加薪成功’得1分;调用函数给关彤彤考官加薪,返回‘该考官不存在’得1分;满足以上三者得该小题满分3分) c. 创建一个函数,采用loop语句,返回表中所有考官的ername。(2分) (函数代码逻辑正确得1分;调用函数能显示所有考官姓名得1分;满足以上二者得该小题满分2分) 5. 实验思考(2分) (1) 使用函数调用和直接使用SQL对数据表进行修改有何区别? (总结两点及以上得满分2分,否则,酌情扣分。) 6. 实验体会(1分) (自己总结一点及以上,得 1 分;否则,酌情扣分) 7. 版式评分(9分) (1) 作业是否整体排版清晰:若是,得 2 分;否则,得 0 或 1 分。 (2) 作业是否整体截图完整且附有说明:若是,得 2 分;否则,得 0 或 1 分。 (3) 作业是否不出现个人信息且提交格式是否正确:若是,得 5 分;否则,得 0 分。
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!