MSSQL之十七 触发器使用项目案例
来源:互联网 发布:国产单片机品牌 编辑:程序博客网 时间:2024/05/16 19:38
触发器使用项目案例1、添加一个商家系统自动增加一个商家帐号-- 在商家表中设计Insert触发器CREATE TRIGGER t_business_InsertON shop_businesstbAFTER INSERTAS BEGINDECLARE @businessname nvarchar(15)SELECT @businessname = businessname FROM Insertedprint '恭喜您,添加了一个商家,商家名称:' + @businessnameinsert into dbo.shop_adminusertb (adminid,adminuser,pass,adminright,admintype,busid,admindepart,mobilephone)select busid,businessname,'1111','20',12,busid,businessname,contactmobile from InsertedENDGO-- 在管理员表中设计Insert触发器Create TRIGGER t_adminusertb_InsertON dbo.shop_adminusertbAFTER INSERTAS BEGINDECLARE @adminid varchar(20),@adminuser varchar(50),@pass varchar(10),@adminright varchar(10)SELECT @adminid = adminid , @adminuser = adminuser, @pass= pass, @adminright= adminrightFROM Insertedprint '添加了一个帐号'+ char(13) +'用户名称:' + @adminuser + char(13) + '用户名:' + @adminid + char(13) +'密 码:' + @pass + char(13) +'权 限:' + @adminrightEND2、变更订单为订单失败,系统自动退还商品库存-- 变更订单Create TRIGGER t_order_updateStateON dbo.shop_shopcarttb FOR UPDATEASBEGINSET NOCOUNT ONif UPDATE (orderstate)BEGINdeclare @orderstate int,@oldorderstate intset @orderstate = (select orderstate from inserted)set @oldorderstate = (select orderstate from deleted)print '变更订单状态:由 ' + cast(@oldorderstate as varchar(5)) + ' 变更为 ' + cast(@orderstate as varchar(5))if (@orderstate = 904)beginupdate dbo.shop_gift11tb set giftnum = giftnum + 1 , giftchangenum = giftchangenum + 1 where giftid = (select giftid from inserted)endENDSET NOCOUNT OFFEND-- 商品库存变更Create TRIGGER t_gift_updateStateON dbo.shop_gift11tbFOR UPDATEASBEGINif UPDATE (giftnum)BEGINdeclare @newNum int, @oldNum int, @giftid varchar(20)set @oldNum = (select giftnum from deleted)select @newNum = giftnum, @giftid = giftid from insertedprint '变更商品(' + @giftid + ')库存,由 ' + cast(@oldNum as varchar(5)) + ' 变更为 ' + cast(@newNum as varchar(5))ENDENDGO3、删除一个商家,系统自动删除该商家的登录帐号-- 在商家表中设计Delete触发器Create TRIGGER t_business_DeleteON dbo.shop_businesstbFOR DELETEASBEGINSET NOCOUNT ONDECLARE @businessname nvarchar(15)SELECT @businessname = businessname FROM Deletedprint '删除了' + CAST(@@RowCount as varchar(5)) + '个商家,商家名称:' + @businessnameDELETE dbo.shop_adminusertb FROM dbo.shop_adminusertb INNER JOIN Deleted ON shop_adminusertb.adminid = Deleted.busidSET NOCOUNT OFFENDGo-- 在管理员表中设计Delete触发器Create TRIGGER t_adminusertb_DeleteON dbo.shop_adminusertbAFTER DELETEAS BEGINDECLARE @adminid varchar(20),@adminuser varchar(50),@pass varchar(10),@adminright varchar(10)SELECT @adminid = adminid , @adminuser = adminuser, @pass= pass, @adminright= adminrightFROM Deletedprint '删除了' + CAST(@@RowCount as varchar(5)) + '个帐号'+ char(13) + '用户名称:' + @adminuser + char(13) + '用户名:' + @adminid + char(13) + '密 码:' + @pass + char(13) + '权 限:' + @adminrightENDGO
0 0
- MSSQL之十七 触发器使用项目案例
- [MSSQL]开发之 使用触发器自动编号
- Mssql触发器学习例子之UPDATE触发器
- Mssql触发器学习例子之INSERT触发器
- oracle触发器使用案例
- mssql 触发器
- mssql 触发器
- MSSQL触发器
- MSSQL 触发器
- MSSQL 触发器
- MSSQL:触发器
- MSSQL之十 触发器和事务
- 转载-MSsql触发器的使用(入门)
- MSSQL之二十一 存储过程案例
- C# ,十七章 项目案例: QQ用户信息管理系统
- 触发器案例
- 触发器(十七)Trigger_Insert_ForeDutyLogSixT
- 触发器-MSSQL常用操作
- Java 学习笔记(0x04) this关键字
- android --activity 中的控件设置侦听(onclickListener)无效,自定义adapter不执行getView 方法
- Hello Mr.J——shiro session管理机制
- 泛型
- 162.Number of Digit One
- MSSQL之十七 触发器使用项目案例
- jni使用
- (02)Struts2_概述
- android6.0以上动态申请权限问题。
- JAVA.IO
- swift开发之定时器(NSTimer)
- JDBC( 九) JDBC对于BLOB的处理
- cJSON的使用介绍及实例分析
- Java多态易错点