文档库 最新最全的文档下载
当前位置:文档库 › 动作路径和触发器

动作路径和触发器

动作路径和触发器

ppt触发器使用教程(一 )

ppt触发器使用教程(一) ppt中自定义动画效果中自带的触发器功能,能在PPT中实现交互,给课件的课件的制作了很多的方便,也让PPT课件增添了许多亮点。 什么是触发器?我个人的理解,触发器就相当于一个“开关”,通过这个开关控制PPT中的动作元素(包括音频视频元素)什么时候开始运作。例如,页面中有两个动作元素,一般情况下,动作元素的动作有一个先后关系,也就是说,那个动作元素先动,那个动作元素后动,是事先设定好了的,PPT作品运行时是不能调整其动作的先后顺序的。而在教学实践中,往往存在动作顺序的不确定性,这时,触发器就能帮上大忙了。如图,同一页面中有1、2、3三个动作元素,通过触发器,可以让这三个动作元素随意的出现,而不是按设定的顺序出现。 怎样才能实现让这三个动作元素随意的出现,而不是按设定的顺序出现。 首先给动作元素1进行动画设置,如下图

然后点击上图中矩形后面的小三角,打开动画效果设置对话框, 再点击上图中的效果选项,在弹出的对话框中选中“计时”标签

点击触发器,并选中“单击下列对象时启动效果”然后选中“矩形1”,最后“确定”就可以了。 按相同的方法,对动作元素2、3进行设置,所有的设置完成之后,你试试,是不是可以随意点击某个动作对象,某个动作对象就开始运动了? 思考一:这种触发器效果在课件制作是有什么作用? 附:利用自定义动画效果中自带的触发器功能可以轻松地制作出交互练习题 现在在PowerPoint 2003,利用自定义动画效果中自带的触发器功能可以轻松地制作出交互练习题。触发器功能可以将画面中的任一对象设置为触发器,单击它,该触发器下的所有对象就能根据预先设定的动画效果开始运动,并且设定好的触发器可以多次重复使用。类似于Authorware、Flash等软件中的热对象、按钮、热文字等,单击后会引发一个或者的一系列动作。下面举一个制作选择题的例子来说明如何使用PowerPoint的触发器。 1. 插入文本框并输入文字

存储过程与触发器实验

第一章存储过程与触发器实验 实验目的 1.理解存储过程的工作原理和作用。 2.掌握存储过程设置和程序设计过程。 3.理解触发器的工作原理和作用。 4.掌握触发器编写方法。 实验环境 采用IBM DB2或Sybase数据库管理系统作为实验平台。其中,DB2可以采用DB2 Express-C或DB2 V8 Enterprise。 实验完成人:李肇臻,谢锦 实验内容 一、存储过程实验 1.针对下面2个完整性约束条件,建立存储过程,实现当数据导入或更新时,可以自动修改拥塞率、半速率话务量比例 (1)拥塞率=拥塞数量/呼叫数量 (2)半速率话务量比例=半速率话务量/全速率话务量 在DB2CMD中运行,win7用管理员权限。 create procedure M() language SQL begin update CALLDATA set "callcongs"="congsnum"/"callnum" where "congsnum"<>0 and "callnum"<>0; update CALLDATA set "rate"="thtraff"/"traff" where "thtraff"<>0 and "traff"<>0; end @ 2.将存储过程添加到数据库服务器上

3.在客户端编写调用存储过程的主程序 4.运行客户端程序,调用存储过程,观察存储过程执行过程和数据更新情况;调用就用db2 CALL M() 二、触发器实验 1. 针对下列约束条件,分别建立1个触发器: 1)每个小区/扇区最多占用14个TCH频点,合法频点范围在[1,60]之间。当向小区中新加入频点时,如果小区中现有频点数目已达到14个,则用新加入的频点替换现有频点中的最小频点;当修改或新加入频点时,如果发现频点不在合法范围内,则输出提示信息,并拒绝该操作。 create trigger first_1 after insert on FREQUENCY

存储过程和触发器(数据库实验5)

数据库基础与实践实验报告实验五存储过程和触发器 班级:惠普测试142 学号:1408090213 姓名:闫伟明 日期:2016-11-14

1 实验目的: 1)掌握SQL进行存储过程创建和调用的方法; 2)掌握SQL进行触发器定义的方法,理解触发器的工作原理; 3)掌握触发器禁用和重新启用的方法。 2 实验平台: 操作系统:Windows xp。 实验环境:SQL Server 2000以上版本。 3 实验内容与步骤 利用实验一创建的sch_id数据库完成下列实验内容。 1.创建存储过程JSXX_PROC,调用该存储过程时可显示各任课教师姓名及其所教课程名称。 存储过程定义代码: CREATE PROCEDURE JSXX_PROC AS SELECT tn 教师姓名,cn 所教课程FROM T,TC,C WHERE T.tno=TC.tno AND TC.cno=C.cno 存储过程执行语句与执行结果截图: EXECUTE JSXX_PROC 2.创建存储过程XM_PROC,该存储过程可根据输入参数(学生姓名)查询并显示该学生的学号、 所学课程名称和成绩;如果没有该姓名学生,则提示“无该姓名的同学”。 存储过程定义代码:

CREATE PROCEDURE XM_PROC @sname VARCHAR(100) AS BEGIN IF EXISTS(SELECT NULL FROM S WHERE sn=@sname) SELECT S.sno 学号,cn 课程,score 成绩FROM S,SC,C WHERE SC.cno=C.cno AND SC.sno=S.sno AND S.sn=@sname ELSE PRINT'无该姓名的同学。' END 运行截图: 3.创建存储过程XBNL_PROC,该存储过程可根据输入参数(专业名词,默认值为计算机专业), 统计并显示该专业各年龄段男、女生人数。如果没有该专业,则显示“无此专业”。 存储过程定义代码: CREATE PROCEDURE XBNL_PROC @departName VARCHAR(30)='计算机', @begin INT, @end INT AS

-第九章作业参考答案

第九章作业 专业 学号 姓名 等级 第九章 脉冲波形的产生与变换 9.1 图题9.1是用两个555定时器接成的延时报警器。当开关S 断开后,经过一定的延迟时间后,扬声器开始发声。如果在延迟时间内开关S 重新闭合,扬声器不会发出声音。在图中给定参数下,试求延迟时间的具体数值和扬声器发出声音的频率。图中G 1是CMOS 反相器,输出的高、低电平分别为V OH =12V ,V OL ≈0V 。 图题9.1 解:1.工作原理: 图题9.1由两级555电路构成,第一级是施密特触发器,第二级是多谐振荡器。施密特触发器的输入由R 1、C 1充放电回路和开关S 控制。 当S 闭合时,V C =0V ,施密特触发器输出高电平。施密特触发器的输出经反相器去控制多谐振荡器的R D 端,当施密特触发器的输出为高电平时,R D =0,多谐振荡器复位,扬声器不会发出声音。 当开关S 断开后,R 1、C 1充放电回路开始充电,V C 随之上升,但在达到CC T 3 2 V V =+之前, 施密特触发器的输出仍为高电平时,R D =0,扬声器仍不会发出声音。这一段时间即为延迟时间。 一旦V C 达到CC T 32 V V =+,施密特触发器触发翻转,输出低电平,R D =1,多谐振荡器工作,扬 声器开始发声报警。 2.求延迟时间: 延迟时间由R 1、C 1充放电回路的充电过程决定: τ t e v v v v -+∞-+∞=)]()0([)(C C C C 将 V 12)(CC C ==∞V v )0(C +v =0V τ=R 1C 1代入上式,得: )1(1 1CC C C R t e V v --= t=t 1时,CC C 3 2 V v =代入上式,整理得延迟时间: t 1= R 1C 1ln3≈1.1 R 1C 1=1.1×106+10×10-6=11S 扬声器发声频率:MHz 95.01 1≈== f

实验五 触发器操作实验

实验五触发器操作实验 一、实验目的和要求 1、掌握SQL Server中的触发器的使用方法; 二、实验内容和步骤 1、在学生表student上建立一个DELETE类型的触发器tr_delete,触发动作是显示信息“已删除学生表中的数据”。 2、创建名为为tr_delete1的触发器,要求实现如下功能:当删除课程表course中某一门课程的记录时,级联删除成绩表sc中有关此课程的记录。 3、创建名为tr_delete2的触发器,要求实现如下功能:当修改课程表course中某一门课程的课程号时,级联修改成绩表sc中有关此课程的课程号。 4、创建名为tr_delete3的触发器,要求如下:当同时修改student表中的姓名和性别字段时,提示用户“不能同时修改姓名和性别字段”,并撤销此次修改操作。 5、在学生表student上建立一个名为tr_sno的触发器。该触发器将被操作update所激活,将不允许用户修改表的sno字段。 二、实验环境 1.Windows7+SQL 三、调试过程 1.删除出错(级联删除) 修改:(删除sc表外键数据后再删student表)

2.更新出错(级联更新) 修改: 四、实验结果 1.

2. 3.

4. 5.

五、总结 通过此次实验: 1.本人加深对SQL和Transact-SQL语言的查询语句的理解; 2.简单了解了触发器的使用; 3.对级联删除有了再一步的理解,但是对于级联更新的处理还是不够,例如第五题依 旧没解决调试出现的约束冲突问题 六、附录 /************************************************************ 1、在学生表student上建立一个DELETE类型的触发器tr_delete,触发动作是显示信息“已删除学生表中的数据”。 *************************************************************/ create trigger tr_delete on Student after delete as begin print'已删除学生表中的数据' end delete from sc where sno='95011' delete from student where sno='95011' drop trigger tr_delete insert into student values('95011','王一鸣',20,'男','计算机系','福州市') insert into sc(sno,cno,grade)

实验六 存储过程和触发器

实验六存储过程与触发器 一、目的与要求 1.掌握编写数据库存储过程的方法。 2.掌握建立数据库触发器的方法,通过实验观察触发器的作用与触发条件设置 等相关操作。 二、实验准备 1.了解编写存储过程与调用的T-SQL语法; 2.了解触发器的作用; 3.了解编写触发器的T-SQL语法。 三、实验内容 (一)存储过程 在studentdb数据库中建立存储过程getPractice,查询指定院系(名称)(作为存储过程的输入参数)中参与“实践”课程学习的所有学生学号、姓名、所学课程编号与课程名称,若院系不存在,返回提示信息。 提示:D_Info表中存储了院系代码D_ID,而St_Info表中学号字段St_ID的前两位与之对应,则D_Info表与St_Info表之间的联系通过这两个字段的运算构成连接条件。 1.分别执行存储过程getPractice,查询“法学院”与“材料科学与工程学院” 的学生中参与“实践”课程的所有学生学号、姓名、所学课程编号与课程名称。 create procedure getPractice @D_Name varchar(30) output as begin if not exists (select * from D_Info where D_Name= @D_Name ) print '对不起,该院系不存在' else select st_info、St_ID,C_Info、C_No,C_Name from s_c_info inner join st_info on st_info、St_ID=s_c_info、st_id inner join C_Info on s_c_info、c_no=C_Info、C_No where st_info、St_ID in ( select St_ID from st_info join D_Info on D_Info、D_ID =left(st_info、St_ID,2) where C_Info、C_Type='实践' and D_Info、D_Name= @D_Name ) end go

触发器作业

银行的取款机系统 问题: 1、解决银行取款问题:当向交易信息表(transInfo)中插入一条交易信息时,我们应自动更新对应帐户的余额。create trigger trig_transInfo on transInfo For Insert AS declare@type char(4),@outMoney MONEY declare@myCardID char(10),@balance MONEY select@type=transType,@outMoney= transMoney,@myCardID=cardID from inserted If(@type='支取') update bank set CurrentMoney=CurrentMoney -@outMoney where cardID=@myCardID else update bank set

currentMoney=currentMoney+@outMoney where card=@mycardID go 2、当删除交易信息表时,要求自动备份被删除的数据到表backupTable中。 create trigger trig_delete_transInfo on transInfo for delete AS print'开始备份数据,请稍后···' if not exists(select*from sysobjects where name='backupTable') select*INTO bactkupTable from deleted else insert INTO backupTable select*from deleted print'备份数据成功,备份表中的数据为:' select*from backupTable go

存储过程与触发器 实验报告

信息工程学院实验报告 课程名称:《数据库原理》 实验项目名称:存储过程与触发器 一、实验目的: (1)了解存储过程的概念 (2)掌握创建、执行存储过程的方法 (3)了解查看、修改和删除存储过程的方法 (4)了解触发器的概念 (5)掌握创建触发器的方法 (6)掌握查看、修改、删除触发器信息的方法 二、实验设备与器件 Win7 +Sql server 2008 三、实验内容与步骤 (一)存储过程 运行实验四附录中的SQL语句,准备实验数据。然后创建下列存储过程,并调试运行存储过程,查看运行结果。 1.在企业管理器中创建一个名为StuInfo的存储过程,完成的功能是在student表中查询系号为D2的学号、姓名、性别、年龄、系号的内容。 CREATE PROCEDURE StuInfo AS SELECT SNO AS学号, SNAME AS姓名, SSEX AS性别, SAGE AS年龄, DNO AS系号 FROM student WHERE DNO='D2' 结果: stuinfo 2.使用T_SQL语句创建存储过程,完成的功能是在表student,course和study中查询以下字段:学号、姓名、性别、课程名称、考试分数。

use mydb --查询是否已存在此存储过程,如果存在,就删除它 if exists(select name from sysobjects where name='StuScoreInfo'and type='P') drop procedure StuScoreInfo go --创建存储过程 CREATE PROCEDURE StuScoreInfo as select student.sno as学号, sname as姓名, ssex as性别, course.cname as课程名称, study.grade as考试分数 from student,course,study where student.sno=study.sno and course.cno=study.cno 结果: StuScoreInfo 3.使用T_SQL语句创建一个带有参数的存储过程stu_sno_info,该存储过程根据传入的学生编号,在student表中查询此学生的信息。 if exists(select name from sysobjects where name='stu_info'and type='P') drop procedure stu_info go --创建存储过程 create procedure stu_info @sno varchar(8) as select sno as学号, sname as姓名, ssex as性别, sage as年龄, dno as年级

数字电子技术练习题及答案

数字电子技术练习题及答案 一、填空题 1、(238)10=( )2 =( EE )16。(110110.01)2=( 36.4 )16=( 54.25 )10。 2、德?摩根定理表示为 B A +=( B A ? ) , B A ?=( B A + )。 3、数字信号只有( 两 )种取值,分别表示为( 0 )和( 1 )。 4、异或门电路的表达式是( B A B A B A +=⊕ );同或门的表达式是( B A AB B A ?+=⊙ ) 。 5、组成逻辑函数的基本单元是( 最小项 )。 6、与最小项C AB 相邻的最小项有( C B A )、( C B A ? ) 和 ( ABC ) 。 7、基本逻辑门有( 与门 )、( 或门 )和( 非门 )三种。复合门有( 与非门 )、( 或非门 )、( 与或非门 )和( 异或门 )等。 8、 9、 10、最简与或式的定义是乘积项的( 个数最少 ),每个乘积项中相乘的( 变量个数也最少)的与或表达式。 11、在正逻辑的约定下,“1”表示( 高电平 ),“0”表示( 低电平 )。在负逻辑的约定下,“1”表示( 低电平 ),“0”表示( 高电平 )。 12、一般TTL 门电路输出端( 不能 )直接相连,实现线与。(填写“能”或“不能”) 13、三态门的三种可能的输出状态是( 高电平 )、( 低电平 )和( 高阻态 )。 14、实现基本和常用逻辑运算的(电子电路),称为逻辑门电路,简称门电路。 15、在TTL 三态门、OC 门、与非门、异或门和或非门电路中,能实现“线与”逻辑功能的门为(OC 门),能实现总线连接方式的的门为(三态门)。 16、T TL 与非门的多余输入端不能接( 低 )电平。 17、 18、真值表是将输入逻辑变量的( 所有可能取值 )与相应的( 输出变量函数值 )排列在一起而组成的表格。 19、组合逻辑电路是指任何时刻电路的稳定输出,仅仅只决定于(该时刻各个输入变量的取值)。 20、用文字、符号或者数码表示特定对象的过程叫做( 编码 )。把代码的特定含义翻译出来的过程叫( 译码 )。 在几个信号同时输入时,只对优先级别最高的进行编码叫做( 优先编码 )。 21、两个1位二进制数相加,叫做(半加器)。两个同位的加数和来自低位的进位三者相加,叫做(全加器)。 22、比较两个多位二进制数大小是否相等的逻辑电路,称为(数值比较器)。 23、半导体数码显示器的内部接法有两种形式:共(阳)极接法和共(阴)极接法。对于共阳接法的发光二极管数码显示器,应采用(低)电平驱动的七段显示译码器。 24、能够将( 1个 )输入数据,根据需要传送到( m 个 )输出端的任意一个输出端的电路,叫做数据分配器。 25、在多路传输过程中,能够根据需要将( 其中任意一路挑选出来 )的电路,叫做数据选择器,也称为多路选择器或多路开关。 26、触发器又称为双稳态电路,因为它具有( 两个 )稳定的状态。 27、根据逻辑功能不同,触发器可分为( RS 触发器 )、( D 触发器 )、( JK 触发器 )、( T 触发器 )和( T ’触发器 )等。根据逻辑结构不同,触发器可分为( 基本触发器 )、( 同步触发器 )和( 边沿触发器 )等。 28、JK 触发器在JK =00时,具有( 保持 )功能,JK =11时;具有( 翻转 )功能;JK =01时,具有( 置0 )功能;JK =10时,具有( 置1 )功能。 29、JK 触发器具有( 保持 )、( 置0 )、( 置1 )和( 翻转 )的逻辑功能。D 触发器具有( 置0 )和( 置1 )的逻辑功能。RS 触发器具有( 保持 )、( 置0 )和( 置1 )的逻辑功能。 T 触发器具有( 保持 )和( 翻转 )的逻辑功能。T ’触发器具有( 翻转 )的逻辑功能。 30、边沿触发器具有共同的动作特点,即触发器的次态仅取决于CP 信号( 上升沿或下降沿 )到来时刻输入的逻辑状态,而在这时刻之前或之后,输入信号的变化对触发器输出的状态没有影响。 31、基本RS 触发器的特性方程是( n n Q R S Q +=+1 );其约束条件是( 0=RS )。JK 触发器的特性方程是( n n n Q K Q J Q +=+1 );D 触发器的特性方程是( D Q n =+1 );T 触发器的特性方程是( n n n Q T Q T Q +=+1 ); T ’触发器的特性方程是( n n Q Q =+1 )。

实验五:触发器和存储过程

实验五:触发器和存储过程 一.实验目的:理解触发器和存储过程的含义,掌握用SQL语句实现触发器和存储过程的编写,并初步掌握什么情况下使用事务。 二.实验内容: 有一个小型的图书管理数据库,包含的表为: bookstore(bookid,bookname,bookauthor,purchasedate,state);--图书库存表 borrowcard(cardid,ownername);--借书证表 borrowlog(cardid,bookid,borrowdate,returndate);--借书记录表 写一个存储过程,实现借书操作,要求有事务处理。(1)读者借书,要先设置书籍不在库标志state(借出),然后增加借书记录,在同一事务中完成。(2)要求在事务执行过程中引入错误触发事件,以此体会事务的错误保护机制和事务编程的作用。(3)要求用触发器实现表的完整性控制。 三、操作与运行 1.创建图书数据库: create table bookstore (bookid int not null primary key, bookname char(20), bookauthor char(20),

purchasedate datetime, state char(4) ) create table borrowcard (cardid int not null primary key, ownername char(20) ) create table borrowlog (cardid int not null, bookid int not null, borrowdate datetime, returndate datetime, primary key(cardid,bookid), ---foreign key(cardid)references borrowcard(cardid), ---foreign key(bookid)references bookstore(bookid) ) 通过以上语句,可以看到数据库中的表建立成功。 2.创建存储过程: create proc book_borrow @mycardid_in int, @mybookid_in int, @str_out char(30) output

第四章逻辑门电路作业题(参考答案)

第四章逻辑门电路 (Logic Gates Circuits) 1.知识要点 CMOS逻辑电平和噪声容限;CMOS逻辑反相器、与非门、或非门、非反相门、与或非门电路的结构; CMOS逻辑电路的稳态电气特性:带电阻性负载的电路特性、非理想输入时的电路特性、负载效应、不用的输入端及等效的输入/输出电路模型; 动态电气特性:转换时间、传输延迟、电流尖峰、扇出特性; 特殊的输入/输出电路结构:CMOS传输门、三态输出结构、施密特触发器输入结构、漏极开路输出结构。 重点: 1.CMOS逻辑门电路的结构特点及与逻辑表达式的对应关系; 2.CMOS逻辑电平的定义和噪声容限的计算; 3.逻辑门电路扇出的定义及计算; 4.逻辑门电路转换时间、传输延迟的定义。 难点: 1.CMOS互补网络结构的分析和设计; 2.逻辑门电路对负载的驱动能力的计算。 (1)PMOS和NMOS场效应管的开关特性 MOSFET管实际上由4部分组成:Gate,Source,Drain和Backgate,Source和Drain之间由Backgate连接,当Gate对Backgate的电压超过某个值时,Source和Drain之间的电介质就会形成一个通道,使得两者之间产生电流,从而导通管子,这个电压值称为阈值电压。对PMOS管而言,阈值电压是负值,而对NMOS管而言,阈值电压是正值。也就是说,在逻辑电路中,NMOS管和PMOS管均可看做受控开关,对于高电平1,NMOS导通,PMOS截断;对于低电平0,NMOS截断,PMOS导通。 (2)CMOS门电路的构成规律 每个CMOS门电路都由NMOS电路和PMOS电路两部分组成,并且每个输入都同时加到一个NMOS管和一个PMOS管的栅极(Gate)上。 对正逻辑约定而言,NMOS管的串联(Series Connection)可实现与操作(Implement AND Operation),并联(Parallel Connection)可实现或操作(Implement OR Operation)。 PMOS电路与NMOS电路呈对偶关系,即当NMOS管串联时,其相应的PMOS管一定是并联的;而当NMOS管并联时,其相应的PMOS管一定需要串联。 基本逻辑关系体现在NMOS管的网络上,由于NMOS网络接地,输出需要反相(取非)。 (3)CMOS逻辑电路的稳态电气特性 一般来说,器件参数表中用以下参数来说明器件的逻辑电平定义: V OHmin输出为高电平时的最小输出电压 V IHmin能保证被识别为高电平时的最小输入电压 V OLmax能保证被识别为低电平时的最大输入电压 V ILmax输出为低电平时的最大输出电压 不同逻辑种类对应的参数值不同。输入电压主要由晶体管的开关门限电压决定,而输出电压主要由晶体管的“导通”电阻决定。 噪声容限是指芯片在最坏输出电压情况下,多大的噪声电平会使得输出电压被破坏成不可识别的输入值。对于输出是高电平的情况,其最坏的输出电压是V OHmin,如果要使该电压能在输入端被正确识别为高电平,即被噪

数据库原理课程设计报告报告实验创建存储过程与触发器

存储过程与触发器实验日期和时间: 2016 年 5 月13 日、星 期 五第节 实验室:DJ2-信息管理实验室 班级:学号:姓名: 实验环境: 1.硬件:笔记本电脑 2.软件:SQL Server 2012 实验原理: 存储过程概念:存储过程是事先编好的,存储在数据库中的一组被编译了的T-SQL命令集合,这些命令用来完成对数据库的指定操作。存储过程可以接受用户的输入参数、向客户端返回表格或标量结果和消息、调用数据定义语言(DDL)和数据操作语言(DML)语句,然后返回输入参数。 触发器概念:触发器(trigger)是SQL server 提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进行操作( insert,delete, update)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务规则等。 实验任务: 此作业成绩得分根据你完成的任务的难度和数量评分,完成后在实验室给老师演示验收,课后提交电子版报告。如额外完成自拟题目应当事先将所拟题目提交给老师或在报告中明确标注题意。 假定有学校的图书馆管理信息系统,可以用于日常管理书库和同学们的借还书工作。 以下列出参考的库表情况: 根据管理的业务需求来分析,该管理信息系统的数据库应至少包括如下数据表:(打★号的是必须有的表) 1.★图书现有库存表。作用:记录图书的现有库存情况。至少包括:书号、书名、 作者、简介、类别、价格、出版社、出版日期、现有库存数量、最小库存量、库 存总量、库存位置等。 2.★读者信息表。作用:记录读者信息。至少包括:读者编号、证件类型、证件号 码、姓名、性别、职业(可填写教师、学生、教工、其它……)、所属单位、地址、 联系电话等。 3.★借书记录表。作用:记录借书情况,以及是否归还。至少包括:借阅ID(主键, 可设置为自动编号)、书号、读者编号、借阅数量、借阅日期、是否归还、管理员 编号……等。 4.★还书记录表。作用:记录还书情况。至少包括:还书ID(主键,可设置为自动 编号)、书号、读者编号、归还数量、归还日期、是否超期(超过假设45天为超 期)、超期天数、管理员编号……等。(附:为简化操作,续借可视为归还后再借)。 5.管理员信息表。作用:记录负责管理书库和借书还书工作的管理员信息。至少包 括:管理员编号、职工编号(在职工档案表中的职工编号)、用户名、密码、管理

数据库存储过程与触发器实验报告

南昌航空大学实验报告 二00 年月日 课程名称:数据库概论实验名称:数据库存储过程与触发器 班级:122031 姓名:同组人: 指导教师评定:签名: 一、实验环境 1.Windows2000或以上版本; 2.SQLServer 2005。 二、实验目的 熟悉不同数据库的存储过程和触发器,重点实践SQL Server2005,掌握SQL Server2005中有存储过程与触发器的相关知识。 三、实验要求 完成实验指导书中p115-7和p132 -4。 四、实验步骤及参考源代码 1.创建与执行存储过程 create procedure C_P_Proc as select distinct customer.cno,cna,pna,num from paper,customer,cp where customer.cno=cp.cno and paper.pno=cp.pno and cna='李涛' or cna='钱金浩' go execute C_P_Proc 2.删除存储过程 drop procedure C_P_Proc 3.创建插入触发器 create trigger TR_PAPER_I ON PAKER12203125 FOR INSERT AS DECLARE @appr float DECLARE @apno int SELECT @appr=ppr,@apno=pno from inserted begin if @appr<0 or @appr is null begin

raiserror('报纸的单价为空或小于!',16,1) update paper set ppr=10 where paper.pno=@apno end end 4.创建删除触发器 create Trigger TR_PAPER_D on PAKER12203125 after delete as declare @ipno char(6) declare @icount int; select @icount= count(*) from deleted,cp where deleted.pno=cp.pno if @icount>=1 begin select @ipno=pno from deleted raiserror('级联删除cp表中的数据',16,1) delete from cp where cp.pno=@ipno end 5.创建修改触发器 create trigger TR_PAPER_U ON PAKER12203125 for update as declare @ippr float select @ippr=ppr from inserted if @ippr<0 or @ippr is null begin raiserror('输入单价不正确',16,1) rollback transaction end 6. 分别对PAKER12203125表进行插入、修改、删除操作 insert into PAKER12203125 (pno,pna,ppr)values('000006','江西日报','1') insert into PAKER12203125 (pno,pna,ppr)values('000007','江南都市报','15.5') delete from PAKER12203125 where pno='000001' update PAKER12203125 set ppr=12.5 where pno='000002' update PAKER12203125 set ppr=-2 where pno='000004' 五、实验结果

编程作业参考答案

上机作业 1、创建一存储过程,计算选修了某门课程并且平均分在70分以上的学生人数。Create proc pro_1 @cno char(1),@cnt int output As Select @cnt=count(sno) From grade Where cno=@cno and sno in (select sno From grade Group by sno Having avg(gmark)>70 ) go 2、在课程数据表上建立一触发器,当修改某门课程时,相应的修改学生选修的课程号。Create trig tri_1 On course For update As if @@rowcount=0 Return Update grade Set cno=(select cno from inserted) Where cno=(select cno from deleted) If @@error<>0 Rollback Return Go 3、用游标和变量逐行输出学生姓名和性别。 Declare @name char(8),@sex char(2) Declare cursor cur_1 For select sname,ssex From student For read only Open cur_1 Fetch from cur_1 into @name,@sex While @@fetch_status=0 Begin Print ‘姓名:’+@name+’性别:’+@sex Fetch from cur_1 into @name,@sex End Close cur_1 Deallocate cur_1

Oracle存储过程和触发器基本操作解析

南华大学 计算机科学与技术学院 实验报告 (2012~2013 学年度第二学期) 课程名称Oracle高级数据库开发设计实验名称存储过程与触发器基本操作 姓名学号 专业班级 地点教师

前提表脚本: create table S_RZ0122 ( Sno varchar2(11) primary key, Sname varchar2(20) not null, Ssex varchar(2) not null , Sage number(2) not null, Sdept varchar(20) not null ) create table C_RZ0122( Cno varchar2(20) primary key, Cname varchar2(20) not null , Ccredit number(2) not null ) create table SC_RZ0122( Sno varchar2(11) not null, Cno varchar2(20) not null, Score number(3) , primary key(Sno ,Cno), foreign key(Sno) references S_RZ0122(Sno), foreign key(Cno) references C_RZ0122(Cno) ) INSERT INTO S_RZ0122 (Sno ,Sname,Ssex,Sage ,Sdept) V ALUES(0811101,'李勇','男',21,'计算机系') INSERT INTO S_RZ0122 (Sno ,Sname,Ssex,Sage ,Sdept) V ALUES(0811102,'刘晨','男',20,'计算机系') INSERT INTO S_RZ0122 (Sno ,Sname,Ssex,Sage ,Sdept) V ALUES(0811103,'王敏','女',20,'计算机系') INSERT INTO S_RZ0122 (Sno ,Sname,Ssex,Sage ,Sdept) V ALUES(0811104,'张小红','女',19,'计算机系') INSERT INTO S_RZ0122 (Sno ,Sname,Ssex,Sage ,Sdept) V ALUES(0821101,'张立','男',20,'信息管理系') INSERT INTO S_RZ0122 (Sno ,Sname,Ssex,Sage ,Sdept) V ALUES(0821102,'吴宾','女',19,'信息管理系') INSERT INTO S_RZ0122 (Sno ,Sname,Ssex,Sage ,Sdept) V ALUES(0821103,'张海','男',20,'信息管理系') INSERT INTO S_RZ0122 (Sno ,Sname,Ssex,Sage ,Sdept) V ALUES(0831101,'钱小平','女',21,'通信工程系') INSERT INTO S_RZ0122 (Sno ,Sname,Ssex,Sage ,Sdept) V ALUES(0831102,'王大力','男',20,'通信工程系') INSERT INTO S_RZ0122 (Sno ,Sname,Ssex,Sage ,Sdept) V ALUES(0831103,'张珊珊','女',19,'

第6章_存储过程与触发器练习题

有教师表(教师号,教师名,职称,基本工资),其中基本工资的取值与教师职称有关。实现这个约束的可行方案是( )。 A 在教师表上定义一个视图 B 在教师表上定义一个存储过程 C 在教师表上定义插入和修改操作的触发器 D 在教师表上定义一个标量函数 参考答案 C 在SQL SERVER中,执行带参数的过程,正确的方法为()。 A 过程名参数 B 过程名(参数) C 过程名=参数 D ABC均可 参考答案 A 在SQL SERVER服务器上,存储过程是一组预先定义并()的Transact-SQL语句。 A 保存 B 解释 C 编译 D 编写 参考答案 C 在SQL Server中,触发器不具有()类型。 A INSERT触发器 B UPDATE触发器 C DELETE触发器 D SELECT触发器 参考答案 D

()允许用户定义一组操作,这些操作通过对指定的表进行删除、插入和更新命令来执行或触发。 A 存储过程 B 规则 C 触发器 D 索引 参考答案 C 为了使用输出参数,需要在CREATE PROCEDURE语句中指定关键字( )。 A OPTION B OUTPUT C CHECK D DEFAULT 参考答案 B 下列( )语句用于创建触发器。 A CREATE PROCEDURE B CREATE TRIGGER C ALTER TRIGGER D DROP TRIGGER 参考答案 B 下列( )语句用于删除触发器。 A CREATE PROCEDURE B CREATE TRIGGER C ALTER TRIGGER D DROP TRIGGER 参考答案 D

D触发器的使用

实验3 D触发器及其应用 一、实验目的 1、熟悉D触发器的逻辑功能; 2、掌握用D触发器构成分频器的方法; 3、掌握简单时序逻辑电路的设计方法。 二、实验设备 1、数字电路实验箱; 2、数字双踪示波器; 3、函数信号发生器; 4、集成电路:74LS00; 5、集成电路:74LS74; 三、实验内容 1、用74LS74 (1片)构成二分频器、四分频器,并用示波器观察波形; 简单介绍分析: (1) 74LS74:双D触发器(上升沿触发的边沿D触发器) D触发器在时钟脉冲CP的前沿(正跳变0宀1)发生翻转,触发器的次态取决于CP脉冲上升沿到来之前D端的状态,即'=D O因此,它具有置0、置1两种功能。由于在CP=1期间电路具有维持阻塞作用,所以在 CP=1期间,D端的数据状态变化,不会影响触发器的输出状态。/R D和/S D 分别是决定触发器初始状态的置0、置1端。当不需要强迫置0、置1时,/R D和/S D端都应置高电平。74LS74 (CC4013 ,74LS175 (CC4042等均为上升沿触发的边沿触发器。

(2) 74LS74引脚图:

(图 3-1 ) (3) 二分频器的连接线路原理图: 图(3-2) 实验步骤如下: a. 按照上面的连线原理图(3-2)在实验板上连好线; b. 打开电源开关; c. 在CP 端加入1kHz 的连续方波,用示波器观察 CP 1Q 2Q 各 点的 波形。 (4) 四分频器的连接线路原理图: U1A ID -1FP -1CLR T" Output "0

图(3-3) 实验步骤如下: a. 按照上面的连线原理图(3-3)在实验板上连好线; b. 打开电源开关; c. 在CP 端加入1kHz 的连续方波,用示波器观察 CP 1Q 2Q 各 点的 波形。 2、实现如图所示时序脉冲 (74LS74和74LS00各1片) CP 图(3-4) 简单介绍分析: (1)逻辑分配: Q ; Q n Vo Q n V Q n V I F 0 0 0 1 0 0 1 1 1 0 1 1 1 74L574O 1* U1B ____ 5 ii 1 > i€LK TQ CP * * Ouipul

相关文档
相关文档 最新文档