SQLServer安全管理
EXECUTE master..xp_sendmail "administrator" "New user registered!"
该触发器的名称为tr_webusers_insert。可以使用任何想用的名 称来命名触发器,但是每个触发器都必须有惟一的名称。在 触发器的名称内包含和触发器相关联的表和动作作为触发器 名称的一部分是一个很好的主意
冶金工业出版社
可以使用语句CREATE TRIGGER来创建一个触发器。与存储 过程不同,每个触发器都必须和某一个特定的表相关,而且 每一个触发器都只和作用于该表上的一个或多个动作有关, 下面就是CREATE TRIGGER语句的一个简单例子:
CREATE TRIGGER tr_webusers_insert ON webusers FOR INSERT AS
能够方便调试错误。 12.4.1 在屏幕上显示数据 一般的,当在执行批处理时并不需要在屏幕上打印任何结果。然而在调试一
组SQL语句时,PRINT语句就能派上用场。下面就是PRINT语句的一个 简单例子: DECLARE @myvariable VARCHAR(30) SELECT @myvariable="Hello There!" PRINT @myvariable 不能使用PRINT语句在屏幕上打印除字符类型以外的其他数据类型
冶金工业出版社
12.1.2 创建存储过程的方法 开发存储过程可以用两个方法,一个是SQL Server的企业管理
器,另一个是用SQL Serverzid自带的查询分析器。两者能实 现同样的功能。 1. 使用SQL Serve企业管理器创建存储过程 要使用SQL SerБайду номын сангаасer企业管理器来创建一个存储过程。 2. 使用查询分析器来建立存储过程
冶金工业出版社
12.1.3 存储过程的用途 存储过程的用途几乎是无限的。从返回SELECT语句 的结果并用于用户报表到执行复杂的数据有效性校验,可 以用存储过程来做任何事。至于说存储过程到底能做什么, 部分地取决于支持前面列出的两个观点中的哪一种。以下 是存储过程的一些用途: (1)模块化的程序设计。 (2)快速执行。 (3)网络通信量。 (4)安全性。
12.3.2 在开发过程中使用游标 1. 监视Transact-SQL游标的活动 2. 使用游标变量 3. 引用Transact-SQL游标
冶金工业出版社
冶金工业出版社
12.4 使用Transact-SQL的其他技巧 Transact-SQL有很多技巧,使用的好,可以提高开发效率和程序运行的效率,
第12章 Transact-SQL的高级应用 冶金工业出版社
12.1 使用Transact-SQL开发存储过程 12.2 使用Transact-SQL开发触发器 12.3 使用Transact-SQL开发游标 12.4 使用Transact-SQL的其他技巧
目录
冶金工业出版社
冶金工业出版社
对于触发器,请牢记以下重要几点: (1)触发器和某指定的表格有关,当该表格被删除时,任何与
该表有关的触发器同样会 被删除。 (2)在一个表上的每一个动作只能有一个触发器与之关联。 (3)在一个单独的表上,最多只能创建三个触发器与之关联,
一个INSERT触发器,一个DELETE触发器和一个UPDATE触 发器。 (4)当添加第二个由相同动作触发的触发器时,第一个触发器 会在没有任何警告信息的条件下被删除
冶金工业出版社
12.1.1 存储过程的概念 存储过程只是一个SQL语句组合,它们被编译在一起,能通过
单个命令而被执行。存储过程能用于向用户返回数据、在表 中插入新数据、修改数据、执行系统函数和管理任务。总之, 它们是SQL Server中功能非常强大的一部分,它能使用户的 工作更轻松。
12.1 使用Transact-SQL开发存储过程 存储过程是SQL Server上的一个非常有用的特性。存储过程由
被编译在一起的一组SQL语句组成,并可以通过调用单个命 令来执行。它们对于维护那些在SQL Server上运行应用程序 时所需的代码是非常有用的。SQL Server也预安装了许多系 统存储过程,这些系统存储过程在服务器上运行,用于收集 关于服务器的专门信息。
冶金工业出版社
12.2 使用Transact-SQL开发触发器 触发器是一系列在表中的数据修改时要执行的SQL语句的集合。
可以创建一些在表中的数据在插入,修改或删除时触发的触 发器。 12.2.1 创建触发器 使用命令CREATE TRIGGER来创建触发器。
冶金工业出版社
12.2.2 使用Inserted和Deleted表 这里介绍两个特殊的表,Inserted表和Deleted表。此二表仅 仅在触发器运行时存在。可以使用两个表来精确地确定触发 器的动作对数据表所做的修改。
冶金工业出版社
12.3 使用Transact-SQL开发游标 12.3.1 游标简介 关系数据库中的操作会对整个行集产生影响。由SELECT语句返回 行集包括所有满足该语句WHERE子句中条件的行。由语句所返回的 一完整的行集被称为结果集。应用程序,特别是交互式联机应用程序 并不总能将整个结果集作为一个单元来有效地处理。这些应用程序需 一种机制以便每次处理一行或一部分行。游标就是提供这种机制的结 集扩展。 游标通过以下方式扩展结果处理: (1)允许定位在结果集的特定行。 (2)从结果集的当前位置检索一行或多行。 (3)支持对结果集中当前位置的行进行数据修改。 (4)为由其他用户对显示在结果集中的数据库数据所做的更改提供 不同级别的可见性支持。 (5)提供脚本、存储过程和触发器中使用的访问结果集中的数据的 Tranwswawc.ct-nSboQoLk.语net句。