位置: 编程技术 - 正文

Sql Server触发器的使用(sql server触发器实验)

编辑:rootadmin
Sql Server为每个触发器都创建了两个专用表:Inserted表和Deleted表。这两个表由系统来维护,它们存在于内存中而不是数据库中。这两个表的结构总是与被该触发器作用的表的结构相同,触发器执行完成后,与该触发器相关的这两个表也被删除。

推荐整理分享Sql Server触发器的使用(sql server触发器实验),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:sql server触发器创建,sql server触发器的创建和使用,sqlserver触发器语法,sql server触发器的作用,sql server触发器在哪里?,sql server触发器的创建和使用,sql server触发器主要针对下列语句创建,sql server触发器的编写与使用,内容如对您有帮助,希望把文章链接给更多的朋友!

对表的操作

Inserted逻辑表

Deleted逻辑表

增加记录(insert)

存放增加的记录

Sql Server触发器的使用(sql server触发器实验)

删除记录(delete)

存放被删除的记录

修改记录(update)

存放更新后的记录

存放更新前的记录

三、for、after、instead of触发器

after:触发器在触发它们的语句完成后执行。如果该语句因错误而失败,触发器将不会执行。不能为视图指定after触发器,只能为表指定该触发器。可以为每个触发操作(insert、update、delete)指定多个after触发器。如果表有多个after触发器,可使用sp_settriggerorder定义哪个after触发器最先激发,哪个最后激发。除第一个和最后一个触发器外,所有其他的after触发器的激发顺序不确定,并且无法控制。

for:等同于after

instead of:该触发器代替触发操作执行。可在表和视图上指定instead of触发器。只能为每个触发操作(insert、update、delete)定义一个instead of触发器。instead of触发器可用于对insert和update语句中提供的数据值执行增强的完整性检查。

四、 触发器的使用

1、创建触发器:

create trigger trigger_name

on {table_name | view_name}

{for| After | Instead of }

[ insert, update,delete ]

as

sql_statement

2、删除触发器:

drop trigger trigger_name

3、查看数据库中已有的触发器:

select * from sysobjects where xtype='TR'

4、查看单个触发器:

exec sp_helptext '触发器名'

5、修改触发器:

alter trigger trigger_name

on {table_name | view_name}

{for| After | Instead of }

[ insert, update,delete ]

as

sql_statement

五、触发器的实例

1、在Orders表中建立触发器,当向Orders表中插入一条记录时,检查goods表的货品状态status是否为1。是,则不能往Orders表加入该订单。

if (object_id('tgr_orders_insert', 'tr') is not null) drop trigger [tgr_orders_insert];gocreate trigger [tgr_orders_insert]on [orders]after insertas if (select [status] from [goods],[inserted] where [goods].name=[inserted].name)=1begin print 'the goods is being processed' print 'the order cannot be committed' rollback transaction --回滚?避免加入

end

sqlldr装载数据实现代码 这里用excel数据做个最简单的测试。1)把excel数据存为t.txt文件,注意文件后缀名为.txt1jhchen//::--:jhchen//::--:jhchen

sql server字符串非空判断实现方法 CREATEfunctiongetcolor(@井号varchar(),@层位varchar())returnsvarchar()asbegindeclare@sqlvarchar();set@sql=''--distinctselect@sql=@sql+颜色+','from(selectdistinct颜色fromyourtablename

使用xp_cmdshell注销Windows登录用户(终端服务器超出最大连接数) 公司日常项目更新使用TFP,服务器一般维护用远程桌面管理,所以经常登录到服务器,但有时由于某种原因,登录到服务器后,帐号没有及时注销,致使后面无

标签: sql server触发器实验

本文链接地址:https://www.jiuchutong.com/biancheng/348136.html 转载请保留说明!

上一篇:jdbc连接sql server数据库问题分析(jdbc连接sqlserver数据库查询数据画饼图)

下一篇:sqlldr装载数据实现代码(sql*loader-309)

  • 实收资本利息收入可以资本化
  • 职工食堂费用计入管理费用
  • 个税申报可以去税务局吗
  • 费用分割单模板
  • 车间用的电线计入什么科目
  • 嵌入式软件运行的主要流程是什么
  • 多交税款抵税会计分录
  • 广告服务怎么做分录
  • 外协加工分录
  • 销售原材料的账务处理
  • 企业所得税期末贷方余额怎么办
  • 凭票报销交通费补贴
  • 发票密码区出来了还能用吗
  • 员工承担补缴社保的责任
  • 图书发票票样
  • 公司购买电视
  • 个税房租和房贷抵扣一样吗
  • 财报申报逾期可不可以补报
  • 返利发票税率
  • 鸿蒙壁纸怎么设置滚动
  • win10隐藏功能大全
  • 综合资金成本是
  • php cgi配置
  • linux系统中安装软件的批处理文件
  • 土地使用权进项税如何抵扣
  • 职工宿舍的折旧计入什么科目
  • 前端字符长度限制
  • ngwatch.exe
  • php常用的设计模式在开发中的实例
  • 加拿大巨石
  • wordpress使用
  • vue3setup语法糖如何定义realtive数据
  • 验证码php代码
  • 决算清理期和库款报解整理期
  • 融资租赁的利息进项税可以抵扣吗
  • 企业贷款利息可以开发票吗
  • 帝国cms教程官方完整版
  • 记 vue-cli-plugin-dll 使用,优化vue-cli项目构建打包速度
  • 开票项目与实际不符合
  • 农产品增值税免税发票怎么抵扣
  • 捐赠支出汇算清缴需要调增吗
  • 劳务成本账务处理
  • 资本公积的用途有哪些
  • 其他综合收益和营业外收入的区别
  • 一次性开票分期收入账务处理
  • 没有实收资本可以转让吗
  • 固定资产置换存货
  • 员工食堂买菜怎么写分录
  • 费用提前预支的请示
  • 出口转内销补交进口增值税时间
  • 股东借款转为资本公积的决议
  • 固定资产的核算包括
  • 农业合作社成本有哪些
  • 客户将发票丢了怎么赔偿
  • 汇率的差额如何处理
  • 财务票子怎么粘
  • 简易征收可以开具3专票吗
  • 公司经营范围怎么填
  • 什么是存储过程?有哪些优缺点?
  • mysql5717安装详细过程
  • centos如何设置ip
  • windowspe安装win7
  • u盘和移动硬盘和固态硬盘的区别
  • centos硬盘扩容
  • win8系统设置错误
  • win8如何关闭开始屏幕
  • centos6.6
  • linux awk nr
  • cocos资源释放
  • unity Toggle Groud
  • opengl es2
  • windows2008 iis
  • javascript中window对象的子对象不包含
  • 贸易型企业进项发票
  • 广西电子发票如何申请
  • 海关编码更新
  • 税务登记证办理
  • 威海行风热线实时收听
  • 福建省纪检委网站
  • 讲话和讲话精神的区别
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设