网站大量收购独家精品文档,联系QQ:2885784924

MySQL数据库基础与实践 第2版 课后习题答案 CH05课后题答案.docx

MySQL数据库基础与实践 第2版 课后习题答案 CH05课后题答案.docx

  1. 1、本文档共2页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

MySQL数据库基础与实践

PAGE2

STYLEREF\n标题1错误!文档中没有指定样式的文字。STYLEREF标题1错误!文档中没有指定样式的文字。

PAGE16

实践与练习答案

第5章

1.选择题

1-5DBCAA

6-10DBAAA

2.概念题

(1)视图是一个虚拟的表,其结构和数据是建立在对表的查询基础上的,也可以说视图的内容由查询定义,而视图中的数据并不像表、索引那样需要占用存储空间,视图中保存的仅仅是一条select语句,其数据来自于视图所引用的数据库表或者其他视图,对视图的操作与对表的操作一样,可以对其进行查询、修改、删除。

(2)保护数据安全、简化操作、使分散数据集中、提高数据的逻辑独立性。

(3)触发器定义了一系列操作,这一系列操作称为触发程序,当触发事件发生时,触发程序会自动运行。

触发器主要用于监视某个表的插入(insert)、更新(update)和删除(delete)等更新操作,这些操作可以分别激活该表的insert、update和delete类型的触发程序运行,从而实现数据的自动维护。

(4)触发程序是与表有关的命名数据库对象,当表上出现特定事件时,将激活该对象在MySQL中,可以使用createtrigger语句创建触发器,具体语法格式为:

createtriggertrigger_nametrigger_timetrigger_event

ontbl_nameforeachlowtrigger_stmt

与其他数据库对象一样,可以使用drop语句将触发器从数据库中删除,语法格式为:droptrigger[schema_name.]trigger_name

3.操作题

(1)创建一个表tb,其中只有一列a,在表上创建一个触发器,每次插入操作时将用户变量count值增加1。

createtabletb(aint);

set@count=0;

createtriggertb1_insertafterinsert

ontbforeachrow

set@count=@count+1;

(2)在(1)基础上,创建一个由delete触发多个执行语句的触发器tb_delete,每次删除记录时,@count记录删除的个数。

set@old_value=null,@count=0;

delimiter$$

createtriggertb_deleteafterdelete

ontbforeachrow

begin

set@old_value=old.a;

set@count=@count+1;

end$$

delimiter;

(3)定义了一个update触发程序,用于检查更新每一行时将使用的新值,并更改值,使之位于0~100内。(提示:它必须是before触发程序,因为需要将值用于更新行之前对其进行检查。)

delimiter$$

createtriggerudp_checkbeforeupdate

ontbforeachrow

begin

ifnew.a0then

setnew.a=0;

elseifnew.a1100then

setnew.a=100;

endif;

end;

$$

delimiter;

文档评论(0)

balala11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档