在事務中執行sql語句
- public static void ExecuteSqlWithGoUseTran(String sql)
using (SqlConnection conn = new SqlConnection(connectionString))
{
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
SqlTransaction tx = conn.BeginTransaction();
cmd.Transaction = tx;
try
{
//注: 此處以 換行_後面帶0到多個空格_再後面是go 來分割字串
String[] sqlArr = Regex.Split(sql.Trim(), "\r\n\\s*go", RegexOptions.IgnoreCase);
foreach (string strsql in sqlArr)
{
if (strsql.Trim().Length > 1 && strsql.Trim() != "\r\n")
{
cmd.CommandText = strsql;
cmd.ExecuteNonQuery();
}
}
tx.Commit();
}
catch (System.Data.SqlClient.SqlException E)
{
tx.Rollback();
throw new Exception(E.Message);
}
finally
{
conn.Close();
}
}
}
相關文章
- 一條SQL語句在MySQL中如何執行的MySql
- 一條sql語句在mysql中是如何執行的MySql
- 一條 SQL 語句在 MySQL 中是如何執行的?MySql
- SQL語句執行順序SQL
- sql語句如何執行的SQL
- 怎樣在sqlite3上執行SQL語句SQLite
- sql語句執行緩慢分析SQL
- mysql的sql語句執行流程MySql
- SQL 語句的執行順序SQL
- 後臺執行SQL語句(oracle)SQLOracle
- mysql執行sql語句過程MySql
- Mybatis 動態執行SQL語句MyBatisSQL
- MySQL在預設事務下各SQL語句使用的鎖分析MySql
- Laravel 獲取執行的sql語句LaravelSQL
- MySQL cron定時執行SQL語句MySql
- java連線oracle執行sql語句JavaOracleSQL
- SQL Server 查詢歷史執行的SQL語句SQLServer
- 查詢Oracle正在執行的sql語句及執行該語句的使用者OracleSQL
- [20181119]sql語句執行緩慢分析.txtSQL
- SQL語句各子句的執行順序SQL
- mysql sql語句執行超時設定MySql
- Laravel 框架查詢執行的 SQL 語句Laravel框架SQL
- Mybatis原始碼解析之執行SQL語句MyBatis原始碼SQL
- 一條sql語句的執行過程SQL
- SQL 語句的注意事項SQL
- Oracle執行語句跟蹤 使用sql trace實現語句追蹤OracleSQL
- Java中如何解析SQL語句、格式化SQL語句、生成SQL語句?JavaSQL
- Oracle資料庫SQL語句執行過程Oracle資料庫SQL
- GaussDB SQL查詢語句執行過程解析SQL
- SQL 查詢語句的執行順序解析SQL
- 一條update SQL語句是如何執行的SQL
- python關於pymysql 執行sql語句in的用法PythonMySql
- 一條SQL更新語句是如何執行的SQL
- Hive SQL語句的正確執行順序HiveSQL
- 一條SQL更新語句是如何執行的?SQL
- finally語句在return執行之後,return返回之前執行
- 一條更新的SQL語句是如何執行的?SQL
- sql語句執行順序與效能優化(1)SQL優化
- 一條 SQL 查詢語句是如何執行的?SQL