上一页 1 ··· 17 18 19 20 21 22 23 24 25 ··· 41 下一页

2014年1月16日

CDC--Demo

摘要: 一个很小的CDC Demo和相关操作 阅读全文

posted @ 2014-01-16 18:18 笑东风 阅读(550) 评论(1) 推荐(0) 编辑

Transaction And Lock--在事务中使用TRY CATCH

摘要: 在事务中使用TRY CATCH的一些基础 阅读全文

posted @ 2014-01-16 18:15 笑东风 阅读(1579) 评论(0) 推荐(0) 编辑

Transaction And Lock--存储过程中使用事务的模板

摘要: 一个存储过程中使用事务的模板 阅读全文

posted @ 2014-01-16 18:14 笑东风 阅读(316) 评论(0) 推荐(0) 编辑

Transaction And Lock--死锁错误号1205

摘要: 在TSQL中,如果需要判断当前错误是否是因为死锁引起,可以使用ERROR_NUMBER()=1205来判断 在C#中,使用SQLException来捕获 SQLException.Number=1205代表由死锁引发 使用跟踪标记来查看死锁 1204 返回参与死锁的锁的资源和类型,以及受影响的当前命令。作用域:仅全局 1222 以不符合任何XSD 架构的XML 格式,返回参与死锁的锁的资源和类型,以及受影响的当前命令 阅读全文

posted @ 2014-01-16 18:12 笑东风 阅读(440) 评论(0) 推荐(0) 编辑

Transaction And Lock--已提交读快照

摘要: 在事务执行过程中,并不保证两次读取数据一致,当数据在其他事务中修改并提交,再次查询能立即得到最新的数据。 使用快照来保存修改数据的原始版本,读取数据时如数据已经被修改但为提交,则读取快照中的副本数据 --===================================================== 在开启行版本控制后,SQL SERVER 会将行版本数据存放tempdb里,需要考虑tempdb的负载 --===================================================== 优点:有效减少读和写得阻塞,不会读取过时数据和不会引发数据版本冲突 缺点:维护行版本需要额外的开销 阅读全文

posted @ 2014-01-16 18:10 笑东风 阅读(296) 评论(0) 推荐(0) 编辑

Transaction And Lock--两种方式实现可重复读

摘要: 一些需求要求两次查询数据之间不允许数据被修改,即可重复读取可重复读REPEATABLE READ与串行化SERIALIZABLE的区别在于串行化要求满足该查询的数据不被修改且无新满足该查询条件的数据插入(使用范围锁),可重复读只要求数据不被修改(保留S锁至事务结束)。而在read commit事务隔离级别下,被更新的数据会被加S锁,并一直保持事务提交或回滚,因此数据在事务区间内不能被其他事务修改,也保证了两次查询得到数据不发生变化(数据的值而不是行数)因此我们可以使用几种方式来保持数据不发生变化:方式1:在提交读隔离级别下使用HOLDLOCKHOLDLOCK相当于SERIALIZABLE隔离级 阅读全文

posted @ 2014-01-16 18:09 笑东风 阅读(386) 评论(0) 推荐(0) 编辑

Transaction And Lock--存在嵌套事务吗?

摘要: 在很多编程语言中,可以实现嵌套,但在TSQL中,可以实现嵌套事务吗? 答案:不可以 阅读全文

posted @ 2014-01-16 18:08 笑东风 阅读(372) 评论(0) 推荐(0) 编辑

Transaction And Lock--事务中使用return会回滚事务吗?

摘要: 事务中使用return会回滚事务吗? 答案:不会,如果在事务中没有显示提交或回滚事务边return,事务不会被提交或回滚,在C#中,如果没有使用连接池,则事务在连接断开和销毁时被强制回滚,如果使用连接池,则事务在连接被再次使用时调用的exec sp_reset_connection存储过程清理掉。如果该连接没有被再次使用或删除,则事务一直存在,便会一直锁住相关资源不释放,照常日志变大,镜像和复制异常等情况。 阅读全文

posted @ 2014-01-16 18:06 笑东风 阅读(3510) 评论(0) 推荐(0) 编辑

Transcation And Lock--SQL SERVER 事务隔离级别

摘要: SQL SERVER 事务隔离级别:1.未提交读(READ UNCOMMITED) 允许脏读,读取数据时不加共享锁,与使用WITH(NOLOCK)结果相同2.已提交读 不允许脏读,读取数据时加共享锁,但在查询结束后立即释放共享锁,而不用等到事务结束3.可重复读 不允许“不可重复读”,读取数据时加共享锁,将共享锁一直保持到事务结束,从而阻塞其他事务修改被读取的数据4.快照 SQL SERVER 有两种行版本控制,在事务修改数据时,保留一份未修改前的数据副本,其他事务读取数据时访问副本数据,从而有效较少读和写的阻塞 a)已提交读快照隔离(READ_COMMITED_SNAPSHOT) b)SNAP 阅读全文

posted @ 2014-01-16 18:05 笑东风 阅读(229) 评论(0) 推荐(0) 编辑

Transaction And Lock--常用的查询事务和锁的语句

摘要: 常用的查询事务和锁的语句 阅读全文

posted @ 2014-01-16 18:04 笑东风 阅读(1123) 评论(0) 推荐(1) 编辑

上一页 1 ··· 17 18 19 20 21 22 23 24 25 ··· 41 下一页

导航