我开始与进行交易,SqlConnection.BeginTransaction()然后执行DELETE和INSERT。我可以在隔离级别上进行任何配置,以允许任何查询在事务期间以“肮脏的方式”读取数据吗?
基本上,我想在更新数据时防止锁定。问题是; 我无法控制SELECT。如果ReadUncommited在事务上定义隔离级别,外部查询是否有权读取数据而无需等待,还是需要在此查询上定义数据?
例如:
try { connection.Open(); transaction=connection.BeginTransaction(IsolationLevel.ReadUncommited); // DELETE foreach (int i in fibarray) { // INSERTS } transaction.Commit(); } catch (Exception ex) { if (transaction.Connection != null) transaction.Rollback(); }
同时,SELECTS在另一台机器上我没有访问权限。