42得票6回答
事务隔离级别的范围

SQL Server 2005事务隔离级别的作用域规则是什么?我知道不同的级别意味着什么,但不知道如何在手动运行脚本之外正确地应用它们。我找不到一份适用于生产质量代码的实用指南。 显然,作用域从使用类似以下命令开始:SET TRANSACTION ISOLATION LEVEL READ U...

39得票4回答
如何设置事务隔离级别(MySQL)

如何设置MySQL 5.1 InnoDB的隔离级别? 输入以下命令: mysql> show variables like '%isola%'; InnoDB的默认隔离级别是可重复读。 如何更改隔离级别?

31得票2回答
在EF Core中使用隔离级别开始事务

我正在尝试重写旧的库以使用EntityFramework Core,但我无法弄清如何使用特定隔离级别开始事务。 以前我能够做到这样:DbContext.Database.BeginTransaction(IsolationLevel.Snapshot); 什么是EntityFramework...

30得票4回答
为PostgreSQL存储过程设置隔离级别

希望这是一个简单的问题,但我还没有找到一个好的答案。 我被可靠地告知,在PostgreSQL(特别是版本9.0.4)中,存储过程(用户定义的DB函数)本质上是事务性的,因为它们通过一个SELECT语句被调用,而SELECT本身就是一个事务。那么如何选择存储过程的隔离级别呢? 我相信在其他DBM...

30得票10回答
Spring Batch运行单个任务时出现ORA-08177错误:在SERIALIZED隔离级别下无法串行访问该事务

在Spring Batch的JobRepository上使用SERIALIZED隔离级别时,我遇到了以下异常: org.springframework.dao.CannotSerializeTransactionException: PreparedStatementCallback; SQ...

30得票8回答
如何在MySQL的REPEATABLE READ模式下产生“幻读”问题?

使用“可重复读取”技术,可以产生幻读问题,但是如何实现呢?我需要一个例子来教授计算机科学专业的学生。 我认为我必须对非索引字段x进行“SELECT ... WHERE x<=888”的操作,并且在没有上限888的情况下插入一个新行,然后在另一个连接中插入一个值略低于888的新行。 但是它不...

29得票5回答
如何在未启动事务的SqlCommand/SqlConnection上设置隔离级别

以下方法应该在打开的连接上执行脏读取,没有事务。我在哪里设置 IsolationLevel?public string DoDirtyRead(string storedProcName, SqlConnection connection) { using (SqlCommand co...

29得票8回答
避免“丢失更新”的最低事务隔离级别

使用SQL Server的事务隔离级别,您可以避免某些不良的并发问题,例如脏读等。 我现在感兴趣的是丢失更新 - 两个事务可以互相覆盖而不被任何人注意。 我听到的声明和观点有所不同,至少需要选择哪个隔离级别才能避免这种情况。 Kalen Delaney在她的书《SQL Server Int...

28得票1回答
如果没有明确设置,Hibernate使用什么默认隔离级别?

我有一个应用程序,使用hibernate版本3.6.4和c3p0版本0.9.1.2进行连接池。我的底层RDBMS是MySql版本5.0.67。 我的MySQL安装表明默认的事务隔离级别为“REPEATABLE-READ”(4):mysql&gt; select @@GLOBAL.tx_isol...

28得票2回答
悲观锁和乐观锁机制与数据库事务隔离级别有什么关系?

我正在编写一个Web应用程序,两个不同的用户可以更新事项列表,例如待办事项。我已经意识到,乐观锁定机制最适合我,因为我不希望高并发。 我正在研究事务隔离级别,现在有点困惑了。看起来不同的事务隔离级别也可以解决类似的问题。 这两个不同的概念如何相关?如果可能,请给出一个简单的例子。