在SQLSERVER企业管理器中如何创建触发器

下面将分别介绍在MS SQLServer 中如何用SQL Server 管理工具Enterprise Manager 和Transaction_SQL 来创建触发器。

在创建触发器以前必须考虑到以下几个方面:

CREATE TRIGGER 语句必须是批处理的第一个语句;

表的所有者具有创建触发器的缺省权限,表的所有者不能把该权限传给其它用户;

触发器是数据库对象,所以其命名必须符合命名规则;

尽管在触发器的SQL 语句中可以参照其它数据库中的对象,但是,触发器只能创建在当前数据库中;

虽然触发器可以参照视图或临时表,但不能在视图或临时表上创建触发器,而只能在基表或在创建视图的表上创建触发器;

一个触发器只能对应一个表,这是由触发器的机制决定的;

尽管TRUNCATE TABLE 语句如同没有WHERE 从句的delete 语句,但是由于TRUNCATE TABLE 语句没有被记入日志,所以该语句不能触发delete 型触发器;
WRITETEXT 语句不能触发INSERT 或update 型的触发器。

当创建一个触发器时,必须指定触发器的名字,在哪一个表上定义触发器,激活触发 器的修改语句,如INSERT、 delete、 update。 当然两个或三个不同的修改语句也可 以都触发同一个触发器,如INSERT 和update 语句都能激活同一个触发器。
 
用管理工具Enterprise Manger 创建触发器
其操作步骤如下:
启动Enterprise Manger, 登录到指定的服务器上。
展开数据库,然后展开要在其上创建触发器的表所在的数据库,然后单击该表。
右击鼠标,在弹出菜单中选择ALL Tasks, 然后单击Manage Triggers…。
如下图:
 
 
在名字框中选择new, 在文本框中输入触发器文本,如下图 所示。
单击Check Syntax 检查语句是否正确。
单击Apply, 在Name 下拉列表中会有新创建的触发器名字。
单击OK, 关闭窗口创建成功。
创建触发器语法如下:
CREATE TRIGGER [trigger_name] ON [dbo].[Table
]
FOR INSERT, update, delete
AS
Sql_statement
各参数的说明如下:

·trigger_name
是用户要创建的触发器的名字触发器的名字,必须符合MS SQL Server 的命名规则,且其名字在当前数据库中必须是惟一的。

·Table
是与用户创建的触发器相关联的表的名字,并且该表已经存在。

·WITH ENCRYPTION
表示对包含有CREATE TRIGGER 文本的syscomments 表进行加密。

·AFTER
表示只有在执行了指定的操作(INSERT、 delete、 update)之后触发器才被激活,执行触发器中的SQL 语句。若使用关键字FOR, 则表示为AFTER 触发器,且该类型触发器仅能在表上创建。

·INSTEAD OF
请参看“12.8 INSTEAD OF 触发器”
[delete] [,] [INSERT] [,] [update]
关键字用来指明哪种数据操作将激活触发器。至少要指明一个选项,在触发器的定义中三者的顺序不受限制,且各选项要用逗号隔开。

·WITH APPEND
表明增加另外一个已存在某一类型触发器。只有在兼容性水平(指某一数据库行为与以前版本的MS SQL Server 兼容程度)不大于65 时才使用该选项。

·NOT FOR REPLICATION
表明当复制处理修改与触发器相关联的表时,触发器不能被执行。

·AS
是触发器将要执行的动作。

 
·Sql_statement
是包含在触发器中的条件语句或处理语句。触发器的条件语句定义了另外的标准来决定将被执行的INSERT、 delete、 update 语句是否激活触发器。
 
·IF update (column)
用来测定对某一确定列是插入操作还是更新操作,但不与删除操作用在一起。
·IF (COLUMNS_updateD())
仅在INSERT 和update 类型的触发器中使用,用其来检查所涉及的列是被更新还是被插入。

 
·Bitwise_operatorj
是在比较中使用的位逻辑运算符。
 
·Pdated_bitmask
是那些被更新或插入的列的整形位掩码。例如,如果表T 包括C1, C2, C3, C4, C5五列。为了确定是否只有C2 列被修改,可用2 来做位掩码,如果想确定是否C1, C2, C3,C4 都被修改,可用14 来做位掩码。
·Comparison_operator
是一比较操作符用“= ”表示检查在updated_bitmask 中定义的所有列是否都被更新,用“>” 表示检查是否在updated_bitmask 中定义的某些列被更新。
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/305644.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

lunixs 常用命令c语言,常用Lunix命令 - osc_271igh42的个人空间 - OSCHINA - 中文开源技术交流社区...

计算机1.硬件系统输入单元、输出单元、算术逻辑单元、控制单元、记忆单元中央处理单元:CPU(算术逻辑单元、控制单元)电源、主板、CPU、内存(RAM)、硬盘、(声卡、显卡、网卡)(集成在主板上)、调制解调器(将输入的模拟信号转为数字信号)、光驱2.软件系统man  查看帮…

srv.sys蓝屏解决补丁_Win10 补丁 KB4556799 导致部分用户蓝屏死机和网络问题

IT之家5月26日消息 Windows 10 补丁 KB4556799对某些配置造成了许多新问题。除了音频问题,临时用户配置文件和FPS下降之外,Windows 10最新累积更新还导致某些用户出现蓝屏死机、崩溃和网络问题。与Windows 10更新一样,用户经常遇到一系列不同…

c语言键盘控制数码管显示,3*4矩阵键盘控制4位数码管显示的C程序

这个很简单;********************************************************************************;* 标题: 伟纳电子ME300B单片机开发系统演示程序 - 矩阵键盘数码管显示键值 *;* 文件: WL031.asm *;* …

IdentityServer4(六)授权码流程原理之SPA

在【One by One系列】IdentityServer4(四)授权码流程中提过一句:“为了安全,IdentityServer4是带有PKCE支持的授权码模式”我们来回顾一下授权码流程(A)用户访问客户端,后者将前者导向认证服务器…

JS实现上下左右四方向无间隙滚动

想必大家都注意到<marquee>的不循环滚动&#xff0c;所以出现了很多替代脚本&#xff0c;或iframe或JS输出<marquee>&#xff0c;不管怎么做&#xff0c;都略显麻烦。下面说一下这个相对简单的实现思路&#xff1a;一个设定宽度并且隐藏超出它宽度的内容的容器demo…

适合手机端的ckeditor样式_抖音运营干货(三):9款手机视频剪辑APP,让你轻松玩转后期!...

很多朋友想开始用手机拍视频&#xff0c;可能不知道如何剪辑&#xff01;本文将给大家介绍几款好用又方便的手机剪辑短视频工具&#xff0c;即便是零基础&#xff0c;用下面这些工具&#xff0c;你也可以轻松开始剪辑短视频。选择一款实用好用的剪辑工具很重要&#xff0c;工具…

来吧,是时候升级您的领英技术档案了

阅读此文需要2分钟&#xff08;文末有惊喜&#xff09;LinkedIn的应用之广超乎你的想象&#xff0c;包括社会招聘、公关、社群建设、销售、社交媒体营销&#xff08;包括社交广告&#xff09;以及员工宣传。LinkedIn档案不是一份简历&#xff0c;而是集客式营销&#xff08;inb…

c语言查单词小程序,【附源码】小程序初窥之简单查单词

新年假期百无聊赖&#xff0c;于是就看了一下微信小程序的开发方法&#xff0c;花了两天时间入了个门&#xff0c;这里记录一下。阅读之前&#xff0c;先确定你知道基本的 htmlcssjs 语法&#xff0c;这样就能更好地和我一样&#xff0c;以一个新手的视角来理解小程序。目标目标…

读注册表

Public Shared Function readregedit() As Boolean Dim State As RegistryKey State Registry.LocalMachine.OpenSubKey("SOFTWARE\JxcDFT Studio\Register") Try Dim StateValue As String 注意&#xff1a;注册表值取分大小写…

python连接mysql_Python爬虫进阶教程(八):MySQL 数据库连接

PyMySQL介绍PyMySql包含一个纯python的MySQL客户端库。PyMySQL的目标是成为MySQLdb的替代品&#xff0c;并在CPython、PyPy和IronPython上工作。版本要求python 下列之一CPython > 2.6 or > 3.3PyPy > 4.0IronPython 2.7mysql 下列之一MySQL > 4.1 (tested with on…

使用 gRPCurl 调试.NET 5的gPRC服务

介绍你用过 Curl 吗&#xff1f;这个工具允许你通过 http 来发送数据&#xff0c;现在有一个适用于gGRPC的工具&#xff0c;gRPCurl&#xff0c;在本文中&#xff0c;我将介绍如何下载安装这个工具&#xff0c;然后通过这个工具调试我们.NET 5上面的gGRC程序。安装 gRPCurlgRPC…

ICE专题:ICE简介

ICE(Internet Communications Engine)是一个为现实中程序员而写的中间件平台。作为一个高性能的互联网通信平台&#xff0c;ICE包含了很多分层的服务和插件(Plug-ins)&#xff0c;并且简单、高效和强大。 ICE的自由使用遵从GNU的GPL(GNU General Public Licens)许可的条款。ICE…

c语言计算文件摘要值,c语言文件操作摘要.ppt

c语言文件操作摘要第十章 文件 10.1 C文件概述 文件&#xff1a;存储在外部介质上数据的集合,是操作系统数据管理的单位 文件处理方法 缓冲文件系统&#xff1a;高级文件系统&#xff0c;系统自动为正在使用的文件开辟内存缓冲区 非缓冲文件系统&#xff1a;低级文件系统&#…

此 sqltransaction 已完成;它再也无法使用_手把手教你如何修眉毛,学会再也不用花钱去美容院了...

最近看到有网友在评论中询问怎么修眉毛&#xff0c;刚好小编我对修眉有一点研究&#xff0c;可能比不上专业修眉的&#xff0c;但是最少能看不是&#xff0c;今天拿出来献给大家&#xff0c;希望各位自己学会如何修眉毛&#xff0c;那样的话以后就再也不用花钱去美容院了。在此…

国产OS推广应从娃娃和体制内双管齐下

一直以来&#xff0c;国内桌面操作系统被微软垄断。究其根源&#xff0c;既有微软技术更成熟&#xff0c;软件生态丰富、服务完善、商业化水平更好等因素之外&#xff0c;也有老百姓习惯于使用Windows等因素。老百姓之所以习惯于Windows&#xff0c;则是因为破解版横行和微软早…

ASP.NET AJAX 控件开发基础

在 JavaScript 当前广泛使用的版本中&#xff0c;它缺少 .NET 开发人员所熟悉的几个 OOP 的关键概念&#xff0c;而 ASP.NET AJAX 可以模拟其中的大多数,而且 ASP.NET AJAX 的目标是将使用 .NET 的开发人员所熟悉的某些其他构造&#xff08;例如属性、事件、枚举和接口&#xf…

c语言铁路托运行李费用图,3.为铁路部门编写计算运费的程序。假设铁路托运行李,规定每张客票托运费计算方法是:行李重量不超过50kg...

满意答案wodfsdfeqd81推荐于 2018.10.08采纳率&#xff1a;51% 等级&#xff1a;12已帮助&#xff1a;5850人using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication40{class Program{static void Main(string[]…

ufo帧率测试网站_一加7游戏续航测试 满电开始玩猜猜能玩多久

业界顶级的90Hz刷新率屏幕打造沉浸式视觉体验&#xff1b;骁龙855移动平台加强性能输出&#xff1b;更加炫酷的曲面屏设计...采用无刘海式真全面屏&#xff0c;屏占比屏幕赠大的同时&#xff0c;电池容量也进一步得到提升。对于省电优化能力卓尔不群的一加7 Pro&#xff0c;让手…

并行模型Actor

并行开发时经常需要关注加锁和原子操作等一系列线程问题&#xff0c;而Actor模型内部状态由它自己维护&#xff0c;内部数据只能自己修改&#xff0c;因此Actor不需要过多关注线程问题。Actor模型Actor由状态&#xff08;State&#xff09;、邮箱&#xff08;Mailbox&#xff0…

c#书写规范之---代码书写规范

代码书写规范 格式化使代码的逻辑结构很明显。花时间确保源代码以一致的逻辑方式进行格式化&#xff0c;这对于您和你的开发小组&#xff0c;以及以后维护源代码的其他开发人员都有很大的帮助。 以下几点是推荐的格式化方法。 建立标准的缩进大小&#xff08;如四个空格&#…