存储过程中常用语句

原创 2011年01月21日 14:54:00

一、set nocount on

当 SET NOCOUNT 为 ON 时,不返回计数(表示受Transact-SQL 语句影响的行数)。
当 SET NOCOUNT 为 OFF 时,返回计数。

1、为on时,也更新@@rowcount函数
2、为on时,select,insert,update,delete结束时将不会在查询结果中显示"nn rows affected"
3、为on时,如果存储过程中包含的一些语句并不返回许多实际的数据,则该设置由于大量减少了网络流量,因此可显著

提高性能
4、为on时,将不给客户端发送存储过程中的每个语句的 DONE_IN_PROC 信息

 

二、set transaction isolation level read uncommitted

解释:指定语句不能读取已由其他事务修改但尚未提交的数据。这样可以避免脏读。其他事务可以在当前事务的各个语句之间更改数据,从而产生不可重复读取和幻像数据。该选项是 SQL Server 的默认设置。

1、READ COMMITTED 的行为取决于 READ_COMMITTED_SNAPSHOT 数据库选项的设置:
2、如果将 READ_COMMITTED_SNAPSHOT 设置为 OFF(默认设置),则数据库引擎 会使用共享锁防止其他事务在当前事务执行读取操作期间修改行。共享锁还会阻止语句在其他事务完成之前读取由这些事务修改的行。语句完成后便会释放共享锁。
3、如果将 READ_COMMITTED_SNAPSHOT 设置为 ON,则数据库引擎 会使用行版本控制为每个语句提供一个在事务上一致的数据快照,因为该数据在语句开始时就存在。不使用锁来防止其他事务更新数据。
4、当 READ_COMMITTED_SNAPSHOT 数据库选项设置为 ON 时,您可以使用 READCOMMITTEDLOCK 表提示为 READ_COMMITTED 隔离级别上运行的事务中的各语句请求共享锁,而不是行版本控制。

三、set xact_abort on

 指定当   Transact-SQL   语句产生运行时错误时; 是否自动回滚当前事务。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

提问 ora 06546 DDL 语句在非法的上下文中执行 EXECUTE IMMEDIATE 在存储过程中

我写了个创建表和自动创建列的存储过程。。。表明和列的组合字符串外围传入。。如下 procedure pro_createtable (  tname NVARCHAR2,  tCnames N...

解决存储过程中SQL字符串语句执行引入参数的问题

最近在写存储过程的时候,发现一个问题,是关于存储过程中字符串SQL中引入参数的问题。 且看下例: declare @count int select @count=count(*) from ...

SQL中存储过程中SQL语句的单引号和双引号问题

1)是连接运算符,它可以将两个字符串连接成一个字符串。如          a="abc" & "def" 执行连接运算后,a="abcdef"。再如&...

存储过程中执行动态Sql语句

SQL为我们提供了两种动态执行SQL语句的命令,分别是EXEC和sp_executesql;通常,sp_executesql则更具有优势,它提供了输入输出接口,而EXEC没有。还有一个最大的好处就是利...

Oracle 存储过程中的DDL语句

Oracle的存储过程,是我们使用数据库应用开发的重要工具手段。在存储过程中,我们大部分应用场景都是使用DML语句进行数据增删改操作。本篇中,我们一起探讨一下数据定义语句DDL在存储过程中使用的细节和...

存储过程中一些用到的语句的整理

一、存储过程格式: 1)首先在存储过程开始阶段加要注释:若详尽一些,可以参考下面的列表。正常情况一定要加的是描述,创建人,创建时间。如果后期有修改要加上修改人,修改时间,修改内容及原因   /**...

SQL中存储过程中SQL语句的单引号和双引号问题2

关于SQL语句中的双引号、单引号和(1)先来看一个最简单的SQL语句            Insert Into users(username) values("小王")...

存储过程中拼接SQL语句

很多时候我们需要利用参数在存储过程中重新组织SQL语句,在存储过程中拼接的SQL语句只是一个字符串,不会被直接执行,所以加一个execute执行它就可以了。具体看如下演示代码:   代码: ...

MySQL - 存储过程中的控制语句

【1】if …then …elseif ….then…else..end if示例如下:BEGIN #Routine body goes here... IF pinout = 0 THE...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)