同时执行两条sql语句的方法:
public static void executesqltran(string sqlstring1,string sqlstring2)
{
using (sqlconnection conn = new sqlconnection(strdbconnectionstring))
{
conn.open();
sqlcommand cmd = new sqlcommand();
cmd.connection=conn;
sqltransaction tx=conn.begintransaction();
cmd.transaction=tx;
try
{
cmd.commandtext=sqlstring1;
cmd.executenonquery();
cmd.commandtext=sqlstring2;
cmd.executenonquery();
tx.commit();
}
catch(system.data.sqlclient.sqlexception e)
{
tx.rollback();
throw new exception(e.message);
}
}
}
如果有多条sql语句需要放在一个事务里实现执行,就用下面这个方法:
/// <summary>
/// 执行多条sql语句,实现数据库事务。
/// </summary>
/// <param name="sqlstringlist">多条sql语句</param>
public static void executesqltran(arraylist sqlstringlist)
{
using (sqlconnection conn = new sqlconnection(connectionstring))
{
conn.open();
sqlcommand cmd = new sqlcommand();
cmd.connection=conn;
sqltransaction 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.sqlclient.sqlexception e)
{
tx.rollback();
throw new exception(e.message);
}
}
}
方法虽然简单,但确实省了不少时间:)
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!


