文档视界 最新最全的文档下载
当前位置:文档视界 › 触发器的创建和管理

触发器的创建和管理

触发器的创建和管理
触发器的创建和管理

实验——图书馆日常事务管理系统触发器的创建和管理

1.创建触发器

(1)使用SSMS建触发器

在TSJYMS数据库的图书类别表上创建一个名为tslb_insert_trigger的触发器,当执行INSERT操作时,该触发器被触发,禁止插入记录。

CREA TE TRIGGER tslb_insert_trigger ON图书类别

FOR INSERT

AS

BEGIN

PRINT('禁止插入记录!')

ROLLBACK TRANSACTION

END

(2)使用T-SQL语句创建触发器

①在TSJYMS数据库的图书明细表上创建一个名为ts_delete_trigger的触发器,当执行DELETE操作时,该触发器被触发,禁止删除记录。

CREA TE TRIGGER ts_delete_trigger ON图书明细表

FOR DELETE

AS

BEGIN

PRINT('禁止删除记录!')

ROLLBACK TRANSACTION

END

②在TSJYMS数据库的借还明细表上创建一个名为jhmx_update_trigger的触发器,当执行UPDARE操作时,该触发器被触发,不允许修改表中的图书编号。

CREA TE TRIGGER jhmx_update_trigger ON借还明细表

INSTEAD OF UPDA TE

AS

IF UPDA TE(图书编号)

PRINT('禁止删除记录!')

2)多表级联更改触发器的创建

①在TSJYMS数据库的读者信息表上创建一个名为dzxx_insert_trigger的触发器,当在读者信息表中插入记录时,将该记录中的借书证号自动插入借还明细表中。

CREA TE TRIGGER dzxx_insert_trigger ON读者信息

FOR INSERT

AS

DECLARE@NUM CHAR(20)

SELECT@NUM=借书证号

FROM INSERTED

INSERT借还明细表(借书证号)

VALUES(@NUM)

②在TSJYMS数据库的图书明细表上创建一个名称为tsmx_update_trigger触发器,当

修改图书明细表中的图书编号时,如果借还明细表中引用了该图书编号,则禁止修改,并提示“不能修改!”

CREA TE TRIGGER tsmx_update_trigger ON图书明细表

FOR UPDA TE

AS

IF UPDA TE(图书编号)

BEGIN

DECLARE@BIANHAO CHAR(20)

SELECT@BIANHAO=DELETED.图书编号

FROM DELETED

IF EXISTS(SELECT图书编号FROM借还明细表WHERE图书编号=@BIANHAO) BEGIN PRINT('用户不能修改!')

ROLLBACK TRANSACTION

END

ELSE

PRINT('修改完成!')

END

3)触发器功能验证

对所创建的各种触发器进行功能验证,检查其设计的正确性。

①tslb_insert_trigger

验证代码:INSERT图书类别

V ALUES('3333','3333')

②ts_delete_trigger

验证代码:DELETE图书明细表

WHERE图书名称='文化苦旅

'③jhmx_update_trigger

验证代码:UPDA TE借还明细表

SET图书编号='12121212'

WHERE图书编号='29307142'

④dzxx_insert_trigger

验证代码:INSERT读者信息(借书证号,姓名,性别)

V ALUES('0312111002','张娜','女')

⑤tsmx_update_trigger

验证代码:UPDA TE图书明细表

SET图书编号='12121212'

WHERE图书编号='99011818'

4)查看触发器

①通过SSMS查看图书明细表上的触发器。

②使用系统存储过程sp_help、sp_helptext、sp_depends 查看读者信息表上的dzxx_insert_trigger触发器,使用sp_helptrigger查看图书明细表上的所有触发器类型。

EXEC sp_help dzxx_insert_trigger

EXEC sp_helptext dzxx_insert_trigger

EXEC sp_depends dzxx_insert_trigger

EXEC sp_helptrigger图书明细表

5)修改触发器

修改TSJYMS数据库中图书类别表上建立的tslb_insert_trigger的触发器,当执行INSERT、UPDATE操作时,该触发器被触发,自动发出报警信息“禁止插入和修改!”。

ALTER TRIGGER tslb_insert_trigger ON图书类别

FOR INSERT,UPDA TE

AS

BEGIN

PRINT('禁止插入和修改!')

ROLLBACK TRANSACTION

END6)触发器的禁止或启用

禁止或启用TSJYMS数据库中借还明细表上创建的jhmx_update_trigger的触发器。

ALTER TABLE借还明细表DISABLE TRIGGER jhmx_update_trigger

ALTER TABLE借还明细表ENABLE TRIGGER jhmx_update_trigger

7)删除触发器

(1)使用SSMS删除

删除图书类别表上的触发器。

表,触发器,右击,删除

(2)使用T-SQL语句删除

使用T-SQL语句删除图书明细表上的所有触发器。

DROP TRIGGER tsmx_update_trigger

SQL Server 用户定义函数的创建。

(1)创建一个自定义函数age(),根据某读者的出生日期返回该读者的年龄。

CREATE FUNCTION AGE(@BIRTH DATETIME)

RETURNS TABLE

AS

RETURN (SELECT YEAR(GETDATE())-YEAR(出生日期)AS年龄FROM读者信息WHERE 出生日期=@BIRTH)

调用:SELECT*FROM AGE('1989-08-18')

(2)创建一个自定义函数book_info(),根据图书编号返回该书的书名、出版社和库存数。CREATE FUNCTION BOOK_INFO(@BIAOHAO CHAR(10))

RETURNS TABLE

AS

RETURN(SELECT图书名称,出版社,库存数FROM图书明细表

WHERE图书编号=@BIANHAO)

调用:SELECT*FROM BOOK_INFO('00000746')

(3) 创建一个自定义函数read_info(),根据借书证号返回该读者借书的情况。

CREATE FUNCTION read_info(@NUM CHAR(10))

RETURNS TABLE

AS

RETURN(SELECT*FROM图书借阅明细表

W HERE图书编号=@num)

调用:SELECT*fFROM read_info('29307142 ')

(3)修改自定义函数age(),根据某读者的借书证号返回该读者的年龄。

ALTER FUNCTION AGE(@NUM INT)

RETURNS TABLE

AS

RETURN (SELECT YEAR(GETDATE())-YEAR(出生日期)AS年龄FROM读者信息WHERE 借书证号=@NUM)

调用:SELECT*FROM AGE('00000746')

(5)删除自定义函数age()

DROP FUNCTION age

ppt触发器使用教程(一 )

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

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

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

-第九章作业参考答案

第九章作业 专业 学号 姓名 等级 第九章 脉冲波形的产生与变换 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.创建触发器 (1)使用SSMS建触发器 在TSJYMS数据库的图书类别表上创建一个名为tslb_insert_trigger的触发器,当执行INSERT操作时,该触发器被触发,禁止插入记录。 CREA TE TRIGGER tslb_insert_trigger ON图书类别 FOR INSERT AS BEGIN PRINT('禁止插入记录!') ROLLBACK TRANSACTION END (2)使用T-SQL语句创建触发器 ①在TSJYMS数据库的图书明细表上创建一个名为ts_delete_trigger的触发器,当执行DELETE操作时,该触发器被触发,禁止删除记录。 CREA TE TRIGGER ts_delete_trigger ON图书明细表 FOR DELETE AS BEGIN PRINT('禁止删除记录!') ROLLBACK TRANSACTION END ②在TSJYMS数据库的借还明细表上创建一个名为jhmx_update_trigger的触发器,当执行UPDARE操作时,该触发器被触发,不允许修改表中的图书编号。 CREA TE TRIGGER jhmx_update_trigger ON借还明细表 INSTEAD OF UPDA TE AS IF UPDA TE(图书编号) PRINT('禁止删除记录!') 2)多表级联更改触发器的创建 ①在TSJYMS数据库的读者信息表上创建一个名为dzxx_insert_trigger的触发器,当在读者信息表中插入记录时,将该记录中的借书证号自动插入借还明细表中。 CREA TE TRIGGER dzxx_insert_trigger ON读者信息 FOR INSERT AS DECLARE@NUM CHAR(20) SELECT@NUM=借书证号 FROM INSERTED INSERT借还明细表(借书证号) VALUES(@NUM) ②在TSJYMS数据库的图书明细表上创建一个名称为tsmx_update_trigger触发器,当

触发器作业

银行的取款机系统 问题: 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

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。因此,它具有置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)四分频器的连接线路原理图:

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

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

数字电子技术练习题及答案 一、填空题 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 )。

实验七 触发器解读

实验七、触发器 一、实验目的 (1)理解触发器的用途、类型和工作原理。 (2)掌握利用T-SQL语句创建和维护触发器的方法。(3)掌握利用SQL Server Management Studio创建、维护触发器的方法。 二、实验内容、 1、创建AFTER触发器 (1)创建一个在插入时触发的触发器sc_insert,当向SC表插入数据时,须确保插入的学号已在Student表中存在,并且还须确保插入课程号在Course表中存在;若不存在,则给出相应的提示信息,并取消插入操作,提示信息要求指明插入信息是学号不满足条件还是课程号不满足条件。(注:Student表与SC表的外键约束要先取消。)

(2)为Course表创建一个触发器Course_del,当删除了Course表中的一条课程信息时,同时将表SC中相应的学生选课记录也删除。 (3)在Course表中添加一个平均成绩avg_modify,当SC表中某学

生的成绩发生变化时,则Course表中的平均成绩也能及时相应发生改变。 (4)测试上述三个触发器。

2、创建INSERTED OF 触发器 (1)创建一视图student_view,包含学号、姓名、课程号、课程名、成绩等属性,在student_view上创建一个触发器grade_modify,当对student_view中的学生的成绩进行修改时,实际修改的是SC中的相应记录。

(2)在Student表中插入一个getcredit字段(记录学生所获学分的情况),创建一个触发器ins_credit,当更改(注:含插入时)SC表中的学生成绩时,如果新成绩大于等于60分,则该生可获得这门课的学分,如果新成绩小于60分,则该生未能获得这门课的学分。 (3)测试上述两个触发器。

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。因此,它具有置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)四分频器的连接线路原理图: 图(3-3) 实验步骤如下: a、按照上面的连线原理图(3-3)在实验板上连好线; b、打开电源开关; c、在CP端加入1kHz的连续方波,用示波器观察CP,1Q,2Q各点的波形。 2、实现如图所示时序脉冲( 74LS74与74LS00各1片) 图(3-4) 简单介绍分析: (1)逻辑分配:

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

第四章逻辑门电路 (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,如果要使该电压能在输入端被正确识别为高电平,即被噪

触发器的创建与测试

触发器的创建与测试实例 实验环境:系统:windows XP 软件:oracle 9i 实验内容: 1、公司的作业小队、数据审核部门等公司内部用户还是外部用户登陆,系统均能自动记载这些用户登陆以及注销的时间。 2、数据库出错也要有记载;数据库启动和关闭时,系统应自动记载启动/ 关闭的时间、用户名等。 3、禁止数据审核部门用户在早8点之前、下午6点之后、以及周六、周日时间登陆数据库 实验过程: 一、创建触发器 1、创建表 CREATE TABLE "SYS"."TABLE_LOG_ON" ("DATABASE_NAME" V ARCHAR2(100), "EVENT_NAME" V ARCHAR2(100), "EVENT_TIME" DA TE, "TRIGGER_USER" V ARCHAR2(100)); 创建用户登录触发器: CREATE OR REPLACE TRIGGER "SYS"."TRIGER_LOGON" AFTER LOGON ON DATABASE BEGIN INSERT INTO TABLE_LOG_ON(DATABASE_NAME,EVENT_NAME,EVENT_TIME,TRI GGER_USER) V ALUES(SYS.DATABASE_NAME,SYS.SYSEVENT,SYSDATE,USER); END;

2、创建表 CREATE TABLE "SYS"."TABLE_LOG_OFF" ("DATABASE_NAME" V ARCHAR2(100), "EVENT_NAME" V ARCHAR2(100), "EVENT_TIME" DA TE, "TRIGGER_USER" V ARCHAR2(100)); 创建用户注销触发器: CREATE OR REPLACE TRIGGER "SYS"."TRIGER_LOGOFF" AFTER LOGON ON DATABASE BEGIN INSERT INTO TABLE_LOG_OFF(DATABASE_NAME,EVENT_NAME,EVENT_TIME,TR IGGER_USER) V ALUES(SYS.DATABASE_NAME,SYS.SYSEVENT,SYSDATE,USER); END; 3、创建表: CREATE TABLE "SYS"."TABLE_ERROR" ("DATABASE_NAME" V ARCHAR2(100), "ERROR_NAME" V ARCHAR2(100), "EVENT_TIME" DA TE, "TRIGGER_USER" V ARCHAR2(100)); 创建SHUTDOWN触发器: CREATE OR REPLACE TRIGGER "SYS"."TRIGGER_SHUTDOWN" BEFORE

编程作业参考答案

上机作业 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,'

PPT触发器的使用

PPT触发器的使用 (对要实现的东西进行触发器设置) PPT触发器是什么:PPT触发器是PowerPoint中的一项功能,它可以是一个图片、文字、段落、文本框等,相当于是一个按钮,在PPT中设置好触发器功能后,点击触发器会触发一个操作,该操作可以是多媒体音乐、影片、动画等。简单的概括PPT触发器:通过按钮点击控制PPT页面中已设定动画的执行。 PPT触发器的用途:知道PPT触发器是什么了吧!下面Word联盟再来说一下,在哪些情况下我们可以用到这个PPT触发器。我们经常在制作PPT课件的时候,可能需要在课件中插入一些声音文件,但是怎样才能控制声音的播放过程呢?比如:我们想点击一个“播放”按钮,声音就会响起来,第一次点击“暂停/继续”按钮声音暂停播放、第二次点击“暂停/继续”按钮时声音继续接着播放(而不是回到开头进行播放),点击“停止”按钮声音停止。这项功能设置在PPT课件中是很常见的,所以PPT触发器用途非常之广泛! PPT触发器实例教程:上面给大家讲了那么多,下面就来分享3个实例教程,相信大家看了以后对PPT触发器就已经完全掌握了! 案例一:用触发器控制声音 实现效果:通过点击按钮,实现对声音的播放、暂停和停止操作。 准备素材:声音文件、三个按钮图片。 制作过程: ①将声音文件导入PPT中,选择“单击时播放”选项。插入三张按钮图片,并为图片分别命名为“播放”、“暂停”和“停止”; ②在“自定义动画”窗格中,点击“无间道.mp3”右侧按钮,选择“计时”选项,在弹出对话框中点击“触发器”按钮,选择下面的“单击下列对象时启动效果”,点击右侧按钮,选择“播放”,点击确定;

③点击页面中的声音图标,在“自定义动画”窗格中点击“添加效果”,弹出菜单,指向“声音操作”,弹出菜单,点击“暂停”; ④在“自定义动画”窗格中,为“暂停”动画设置触发器,触发对象为“暂停”按钮,设置方法同上; ⑤点击页面中的声音图标,设置自定义动画“停止”并设置触发器;

第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

实训十 触发器的创建和使用

实训十触发器的创建和使用 一、实训目的 1. 理解触发器的作用; 2. 了解触发器和一般存储过程的区别; 3. 掌握创建、修改及删除触发器的方法; 4. 理解触发器执行的过程。 二、实训步骤 (一) 简单触发器的创建和使用 1.在student数据库中t_course表创建一名为myt1的AFTER触发器,要求实现以 下功能:当插入一条记录后提示“已插入一条新记录”,并验证此触发器。 2.在student数据库中t_course表创建一名为myt2的AFTER触发器,要求实现以 下功能:当删除一条记录后提示“已删除一条记录”,并验证此触发器。 3.在student数据库中t_course表创建一名为myt3的AFTER触发器,要求实现以 下功能:当修改一条记录后提示“已修改一条记录”,并验证此触发器。 4.在student数据库中t_course表创建一名为myt4的INSTEAD OF触发器,要求 实现以下功能:当删除一条记录之前提示“不能删除此表的记录!”,并验证此触发器,检查是否能删除此表的记录。 5.删除以上创建的所有触发器。 (二) 较复杂的触发器的创建和使用 1. 创建一个AFTER触发器,要求实现以下功能:在t_score表上创建一个插入更新 类型的触发器scoreCheck,当在score字段中插入或修改考试分数后,触发该触发器,检查分数是否在0至100分之间。(参考教材P186的例10-3,运行后发现尽管分数不在0至100分之间,但还是能够插入和修改) 2. 创建一个AFTER触发器,要求实现以下功能:在t_score表上创建一个插入更新 类型的触发器scoreCheck2,当在score字段中插入或修改考试分数后,触发该触发器,检查分数是否在0至100分之间,若不在,则不能插入或修改,并给出提示。代码段如下: CREATE TRIGGER scoreCheck2 ON t_score FOR insert, update AS declare @ScoreValue as int select @ScoreValue =(select score from inserted) if @ScoreValue <0 or @ScoreValue >100 begin rollback transaction print '数据不正确不能修改' end

触发器作业

设计一个触发器,该触发器仅允许dbo用户可以删除employee3266表内数据,否则出错。 create trigger employeedelete on employee3266 for delete as if exists(select *from deleted) begin if user!='dbo' begin print '你无权删除!' rollback end end drop trigger employeedelete 测试:(以sa用户) delete from employee3266 where employeeno='E2005001' 测试:(以其他用户) sp_addlogin 'wf','wf'/*——————登录名密码*/ sp_adduser 'wf','wf' grant all privileges on employee3266 to wf; /*退出DBMS,重新以wf身份登入DBMS,执行删除操作*/ delete from employee3266 where employeeno='E2005001' 在ordermaster3266表中创建触发器,插入数据时要先检查employee3266表中是否存在和ordermaster3266表同样值的业务员编号,如果不存在则不允许插入。 create trigger OrderMasterIns on OrderMaster3266 for insert as if not exists(select b.saleNo from employee3266 a,inserted b,ordermaster3266 c where b.saleno=a.employeeNo) begin

ppt触发器使用教程(一-)

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

然后点击上图中矩形后面的小三角,打开动画效果设置对话框 , 首先给动作元素1进行动画设置,如下图

自定更动画 ▼> 坯更改于氏:删除 俺改对角线向右下 开始: 令单击时 ▼ 解除锁定 * 速度: T 11令\拒形1: 1 国单击开始禺) 从上一项开始册) 幻颯上一项之后开始 效果选项(D … 计时⑴… 显示高级日程表⑤ 点击触发器,并选中单击下列对象时启动效果”然后选中矩形1” 最后确 定”就可以了。 效果 计时|正文文本动画] 开贻⑤:单击时 3 延迟@1: |o 弓秒 速度怨); |中速(2抄) 创 | (±) 3 r 播完后快退迥 融炭器4)± | r 部分单击序列动画@) 再点击上图中的效果选项,在弹出的对话框中选中 计时”标签

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

第四章-逻辑门电路-作业题 (参考答案) -标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

第四章逻辑门电路 (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,如果要使该电压能在输入端被正确识别为高电平,即被噪声污染后的电压值应该不小于V IHmin,则噪声容限为 V OHmin-V IHmin。对于输出是低电平的情况,噪声容限为V ILmax-V OLmax。

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