110,534
社区成员
发帖
与我相关
我的任务
分享
private void DoInsert()
{
DataTable dtSource = 你获取的DataTable//
ArrayList SQLStringList = new ArrayList();
SQLStringList.Add("Delete删除语句");
if (dtSource != null)
{
for (int i = 0; i < dtSource.Rows.Count; i++)
{
SQLStringList.Add("根据要求拼接的插入数据库预计");
}
}
ExecuteSqlTran(SQLStringList);
}
/// <summary>
/// 执行多条SQL语句,实现数据库事务。
/// </summary>
/// <param name="SQLStringList">多条SQL语句</param>
public static void ExecuteSqlTran(ArrayList SQLStringList)
{
using (OracleConnection conn = new OracleConnection(connectionString))
{
conn.Open();
OracleCommand cmd = new OracleCommand();
cmd.Connection = conn;
OracleTransaction tx = conn.BeginTransaction();
cmd.Transaction = tx;
try
{
for (int n = 0; n < SQLStringList.Count; n++)
{
string strsql = SQLStringList[n].ToString();
if (strsql.Trim().Length > 1)
{
cmd.CommandText = strsql;
cmd.ExecuteNonQuery();
}
}
tx.Commit();
}
catch (System.Data.OracleClient.OracleException E)
{
tx.Rollback();
throw new Exception(E.Message);
}
}
}