首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
设在SQL Server某数据库中有房屋出租表,表的定义如下: CREATE TABLE 租表( 房屋号 char(10), 出租日期 datetime, 租期 int not null,--月数 到期日期 datet
设在SQL Server某数据库中有房屋出租表,表的定义如下: CREATE TABLE 租表( 房屋号 char(10), 出租日期 datetime, 租期 int not null,--月数 到期日期 datet
admin
2020-05-25
623
问题
设在SQL Server某数据库中有房屋出租表,表的定义如下:
CREATE TABLE 租表(
房屋号 char(10),
出租日期 datetime,
租期 int not null,--月数
到期日期 datetime,
PRIMARY KEY(房屋号,出租日期))
现要创建一个具有如下功能的触发器:每当在出租表中插入一行数据(房屋号,出租日期,租期)时,自动计算出本行数据的“到期日期”。请补全下列代码。
CREATE TRIGGER tri ON【1】FOR INSERT
AS
【2】出租表SET到期日期=dateadd(【3】,租期,出租日期)
WHERE房屋号=(SELECT房屋号FROM【4】)
and【5】
选项
答案
【1】出租表 【2】UPDATE 【3】MONTH 【4】INSERTED 【5】出租日期=(SELECT出租日期FROM INSERTED)或(SELECT出租日期FROM IN SERTED)=出租日期
解析
从触发器的语法中可知,【1】处应该填写执行触发器的表,【2】处应该填写指定在表或视图上执行哪些数据修改语句时将激活触发器的关键字。从题目“FOR INSERT”可知,本题创建的触发器是是后触发器。该触发器的功能是“每当在出租表中插入一行数据(房屋号,出租日期,租期)时,自动计算出本行数据的“到期日期”。本题是在出租表上建立后触发器,需要执行的是更新语句。故可推导出【1】处应填写:出租表,【2】处应填写:UPDATE。
本题要求的是更新出租表中的到期日期。更新语句采用UPDATE关键字,其语法格式为:UPDATE表名SET语句,语句为计算到期日期,租期以月计算,故【3】处应填写:MONTH。
本题使用INSERT和UPDATE关键字对出租表进行操作,因此影响的是INSERTED表的内容。故【4】处应填写:INSERTED。
本题要求的是更新出租表中的到期日期,所以查询时,要筛选出满足条件的房屋号与出租日期,故【5】处应填写:出租日期=(SELECT出租日期FROM INSERTED)或(SELECT出租日期FROM INSERTED)=出租日期
使用FOR或AFTER选项定义的触发器为后触发器,即只有在引发触发器执行的语句中的操作都已成功执行,并且所有的约束检查也成功完成后,才执行触发器。而使用INSTEAD OF选项定义的触发器为前触发器。这种模式的触发器中,指定执行触发器而不是执行引发触发器执行的SQL语句,从而替代引发语句的操作。
在触发器语句中可以使用两个特殊的临时工作表:INSERTED表和DELETED表。这两个表是在用户自行数据的更改操作时,SQL Server自动创建和管理的。其中INSERTED表是用于存储INSERT和UPDATE语句所影响的行的副本。而DELETED表用于存储DELETE和UPDATED语句所影响的行的副本。
建立触发器语法是:
Create TRIGGER trigger_name
ON{table|view}
{
{{FOR|AFTER|INSTEAD OF}{[Insert][,][Update]}
AS
[{IF Updalte(column)
[{AND|or}Update(column)]
[…n]
|IF(COLUMNS_UpdateD(){bitwise_operator}updated_bitmask)
{comparison_operator}column_bitmask[…n]
} ]
sql_statement[…n]
}
}
其中:参数trigger_name是触发器的名称。触发器名称必须符合标识符规则,并且在数据库中必须唯一。可以选择是否指定触发器所有者名称。
table|view是在其上执行触发器的表或视图,有时称为触发器表或触发器视图。可以选择是否指定表或视图的所有者名称。
FOR或AFTER指定触发器只有在触发SQL语句中指定的所有操作都已成功执行后才激发。所有的引用级联操作和约束检查也必须成功完成后,才能执行此触发器。如果仅指定FOR关键字,则AFTER是默认设置。不能在视图上定义AFTER触发器。
INSTEAD OF指定执行触发器而不是执行触发SQL语句,从而替代触发语句的操作。在表或视图上,每个Insert、Update或Delete语句最多可以定义一个INSTEAD OF触发器。然而,可以在每个具有INSTEAD OF触发器的视图上定义视图。INSTEAD OF触发器不能在WITH CHECK OPTION的可更新视图上定义。如果向指定了WITH CHECK OPTION选项的可更新视图添加INSTEAD OF触发器,SQL Server将产生一个错误。用户必须用Alter VIEW删除该选项后才能定义INSTEADOF触发器。
{[Delete][,][Insert][,][Update]}是指定在表或视图上执行哪些数据修改语句时将激活触发器的关键字。必须至少指定一个选项。在触发器定义中允许使用以任意顺序组合的这些关键字。如果指定的选项多于一个,需用逗号分隔这些选项。对于INSTEAD OF触发器,不允许在具有ON Delete级联操作引用关系的表上使用Delete选项。同样,也不允许在具有ON Update级联操作引用关系的表上使用Update选项。
AS是触发器要执行的操作。
sql_statement是触发器的条件和操作。触发器条件指定其他准则,以确定Delete、Insert或Updalte语句是否导致执行触发器操作。
转载请注明原文地址:https://kaotiyun.com/show/3zID777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
你满怀信心去工作单位,但是领导给你安排的仅仅是打印、传递文件等小事情,你怎么办?
你所在单位准备开展航天知识科普的活动。请问你作为单位人员。将如何配合开展?
一、注意事项1.申论考试,是对分析驾驭材料能力、解决问题能力、言语表达能力的测试。2.作答参考时限:阅读资料40分钟,作答110分钟。3.仔细阅读给定的材料,然后按申论要求依次作答,答案书写在指定的位置。二、给定资料1.“
给定资料1.中国消费者是全球最倾心于移动支付系统的。调查显示,2016年,中国移动支付的金额是美国的50倍以上。预计未来五年,中国市场以互联网为依托的新经济年均增长速度将在40%左右,到2020年,其规模占GDP的比重将达到10%以上。美国媒体称
给定资料1.媒体披露H省一中学发生群发性肺结核事件后,A县政府官网于2017年11月16日中午通报证实确有此事,但对事件涉及的范围和人数只字未提。而根据《结核病防治管理办法》,肺结核疫情严重,构成突发公共卫生事件的,应当及时向社会公布疫情处置情况
20世纪90年代,有人______传统书信将被新兴的通信方式取代,然而我们惊奇地发现,传统的纸质书信依然健康发展,与电子通信方式______,在当下生活中发挥着重要的作用。填入画横线部分最恰当的一项是:
某校五年级有100名学生参加活动,男生两人一组,女生三人一组,共有41组。那么男、女生各有多少名?
某区乒乓球队的队员中有11人是甲校学生,4人是乙校学生,5人是丙校学生,现从这20人中随机选出2人配对双打,则此2人不属于同一学校的选法有多少种?
1697年洛克为英国贸易和殖民地事务委员会拟写过一份报告,在这份报告中,他主张开办
在SQLServer2008中,主要数据文件必须建立在【11】文件组中。
随机试题
钙调蛋白参与多种酶作用的调控,它属于
下列哪些与慢性粒细胞性白血病与类白血病反应的鉴别有关
尿毒症酸中毒的临床表现是
下列哪项是小结节性肝硬化的典型病理改变
男,26岁,乏力、间断鼻出血3周。既往体健。查体:T36℃,面色略苍白,双下肢可见数个瘀斑,浅表淋巴结未触及肿大,巩膜无黄染,舌尖可见血疱,心肺检查无异常,腹平软,肝脾肋下未触及。血常规:RBC2.3×1012/L,HB70g/L,WBC2.9×1
下列各种筹资方式中,属于直接筹资的有()。
根据公司法律制度的规定,有限责任公司董事、高级管理人员执行公司职务时因违法给公司造成损失的,在一定情形下,股东可以为了公司利益,以自己的名义直接向人民法院提起诉讼。下列各项中,属于该情形的有()。
甲企业得知竞争对手乙企业在M地的营销策略将会进行重大调整,于是到乙企业设在N地的分部窃取乙企业内部机密文件,随之采取相应对策,给乙企业在M地的营销造成重大损失,乙企业经过调查掌握了甲企业的侵权证据,拟向法院提起诉讼,其可以选择提起诉讼的法院有()。
请在【答题】菜单下选择【进入考生文件夹】命令,并按照题目要求完成下面的操作。注意:以下的文件必须都保存在考生文件夹下。为进一步提升北京旅游行业整体队伍素质,打造高水平、懂业务的旅游景区建设与管理队伍,北京旅游局将为工作人员进行一次业务培
ALettertotheUniversityPresident1.表明写信目的:建议提高学校的教学质量2.提出具体建议,如:改进课堂教学质量,加强培养学生的自主学习能力,举办知识竞赛以促进学习风气的改善3.希望建议得到关注
最新回复
(
0
)