机房收费系统退卡之触发器
来源:互联网 发布:如何组织js代码 编辑:程序博客网 时间:2024/05/16 19:48
前言:在弄机房之前,师父告诉我说,你会用到触发器,但是当时完全没概念,什么叫触发器?怎么用啊?虽然软考考过,自考考过,但是那是强行记住的概念,要是说存储过程是为了完成特定的行为而定义的SQL语句,谁都会说,但是实际上呢,我一片空白,而今天我用到了,所以感觉很激动,终于要亲自动手了!
过程:我是在退卡这个窗体上用到的存储器。
作用:1,当一个动作发生的时候,触发执行另一个动作,如下图,当一开始的小球触发一个机关的时候,第二个机关转转紧接着就动了。这就是触发器。在退卡窗体这里,我要做的有两件事:
第一:把所退的卡从卡表中消去记录
第二:把所退的卡的信息记录到退卡表中
上述两个动作几乎是同时发生的,也就是说我把表delete(删除)的时候,另一个动作紧接着发生。如果我把这个行为分成两个,写在D层里也是可以的,只不过有些繁琐,他不能自动的执行,如果我们想省事一点,那么就可以用到触发器。
建触发器:
USE[Jifang]Go/******boject:Trigger [].[] Script Date : ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO/******CREATE TRIGGER [dbo].[myTrigger]******/ALTER TRIGGER [myTrigger] --创建触发器,触发器的名字为 ON [dbo].[CancelCard]AFTER deleteASBEGIN --声明变量 declare @CardNumber int, @StuNumber varchar(MAX), @StuName varchar(MAX), @Balance money, @CancelTime varchar(MAX), @CancelDate varchar(MAX)select @CardNumber=CardNumber FROM deleted select @StuNumber =StuNumber FROM deleted select @StuName =StuName FROM deleted select @Balance =Balance FROM deleted set @CancelDate = CONVERT (date ,GETDATE(),111) --获取当前日期set @CancelTime = CONVERT (time ,GETDATE (),108)--获取当前时间if @@ROWCOUNT >0 --受影响的行数BEGIN Insert into dbo.CancelCard (CardNUmber ,StuNumber ,StuName ,Balance ,CancelTtime ,CancelDate ) values (@CardNumber ,@StuNumber ,@StuName ,@Balance ,@CancelTime ,@CancelDate ) ENDEND
阅读全文
0 0
- 机房收费系统退卡之触发器
- 机房收费系统之退卡窗体
- 机房收费系统之 退卡流程
- 机房收费系统之退卡
- 机房收费系统之退卡
- 退卡--机房收费系统
- 机房收费系统之触发器
- 机房收费系统(二)之下机退卡
- 机房收费系统之七(退卡窗体)
- 机房收费系统之退卡窗体--OLE错误
- 机房收费系统——退卡
- 机房收费系统——退卡
- 【第一次机房收费系统】退卡
- 机房收费系统之触发器的使用
- 【机房收费系统】之触发器的使用
- 机房收费系统个人版-----触发器
- 机房收费系统—《触发器》
- 机房收费系统的退卡和结账
- 洛谷P2161 [SHOI2009]Booking 会场预约_Splay
- 什么是闭包?闭包的优缺点?
- 061day(虚函数和多态)
- 学习Linux基础命令,宏与函数的区别及宏的应用
- Rollup基础篇
- 机房收费系统退卡之触发器
- Gradle的依赖关系缓存可能已损坏(有时会在网络连接超时之后发生)
- 【LeetCode刷题记录】
- 逃离迷宫 HDU
- 关于eclipse连接SQLserver2012失败问题
- c++中位函数
- 进程通信程序管理---共享内存和信号量(Linux)
- python学习笔记 暂停一段时间
- rxjs基础知识