try{
OleDbConnection myConnection = new OleDbConnection(connStr)
myConnection.Open()
OleDbTransaction myTrans = myConnection.BeginTransaction()
//用事务执行,保证数据提交成功
OleDbCommand myCommand = new OleDbCommand()
myCommand.Connection = myConnection
myCommand.Transaction = myTrans
//删除原有此流程的相关人员配置情况
sql_del = "delete from case_workflow_tasklist where proc_id=" + procid + ""
myCommand.CommandText = sql_del
myCommand.ExecuteNonQuery()
//删除原有此流程的相关线配置情况
sql_del = "delete from case_workflow_transition where proc_id=" + procid + ""
myCommand.CommandText = sql_del
myCommand.ExecuteNonQuery()
myTrans.Commit()
}
catch(Exception Trans_error)
{
string strErr = Trans_error.Message
myTrans.Rollback()
Response.Write(strErr)
return
}
finally
{
myConnection.Close()
}
以上是别人的一段代码,我没执行过,但看来那种形势是可以使用
1、优化代码仔细检查一下数据库代码是否写的规范,把多余的打开和关闭都搞掉.。2、修改服务器的注册表,把access的连接线程加大(可能是叫线程吧),如此一来速度会更块.对服务器影响很小.。
在cmd的执行之前 BeginTransaction,执行完后 Commit 即可。出现错误那就RollBack。比如:
try{
cmd.Transaction=conn.BeginTransaction()//开始事务
cmd.ExecuteNonQuery() //执行
cmd.Transaction.Commit() //提交事务
}catch(Exception){
cmd.Transaction.RollBack()//出错就回滚
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)