c# 事务处理
2011-04-27 23:17
267 查看
1 创建一个connection
string connstr = ConfigurationManager.ConnectionStrings["default"].ConnectionString;
SqlConnection sqlconn = new SqlConnection(connstr);
2 创建一个command 连接到 connection上
SqlCommand cmd = new SqlCommand();
cmd.Connection = sqlconn;
3 创建一个 transaction 当 connection 打开的时候将事务和connection 绑定 然后将transaction也和command绑定
SqlTransaction sqltran;
sqlconn.Open();
sqltran = sqlconn.BeginTransaction();
cmd.Transaction = sqltran;
4 处理
try
{
StreamReader sr = new StreamReader(postedFile.InputStream);
string headLine = sr.ReadLine();
headLine = headLine.Replace(";", "],[");
headLine = "[" + headLine + "]";
int lineNumber = 1;
while (!sr.EndOfStream)
{
string saleDataLine = sr.ReadLine();
//rdLine = rdLine.Replace("N/A", "null");
saleDataLine = saleDataLine.Replace("'", "''");
saleDataLine = saleDataLine.Replace(";", "','");
string command = "insert into SalesUploadTest (" + headLine + ") values ('" + saleDataLine + "')";
cmd.CommandText = command;
cmd.CommandType = CommandType.Text;
cmd.ExecuteNonQuery();
lineNumber++;
}
sqltran.Commit();
}
catch (Exception)
{
sqltran.Rollback();
}
finally
{
cmd.Dispose();
sqlconn.Close();
}
string connstr = ConfigurationManager.ConnectionStrings["default"].ConnectionString;
SqlConnection sqlconn = new SqlConnection(connstr);
2 创建一个command 连接到 connection上
SqlCommand cmd = new SqlCommand();
cmd.Connection = sqlconn;
3 创建一个 transaction 当 connection 打开的时候将事务和connection 绑定 然后将transaction也和command绑定
SqlTransaction sqltran;
sqlconn.Open();
sqltran = sqlconn.BeginTransaction();
cmd.Transaction = sqltran;
4 处理
try
{
StreamReader sr = new StreamReader(postedFile.InputStream);
string headLine = sr.ReadLine();
headLine = headLine.Replace(";", "],[");
headLine = "[" + headLine + "]";
int lineNumber = 1;
while (!sr.EndOfStream)
{
string saleDataLine = sr.ReadLine();
//rdLine = rdLine.Replace("N/A", "null");
saleDataLine = saleDataLine.Replace("'", "''");
saleDataLine = saleDataLine.Replace(";", "','");
string command = "insert into SalesUploadTest (" + headLine + ") values ('" + saleDataLine + "')";
cmd.CommandText = command;
cmd.CommandType = CommandType.Text;
cmd.ExecuteNonQuery();
lineNumber++;
}
sqltran.Commit();
}
catch (Exception)
{
sqltran.Rollback();
}
finally
{
cmd.Dispose();
sqlconn.Close();
}
相关文章推荐
- C#事务处理(二)之ADO.NET事务
- [转]c# + mysql + 事务处理(转载于 《C#数据库事务原理及实践》)
- C# 事务处理
- C#处理Access中的事务
- C#实现数据库事务处理的简单示例代码
- C#事务处理(三)之Transactions事务
- C#中的事务处理
- .net C# 事务处理
- C#中分布式事务的超时处理问题
- C#中的事务处理
- T-SQL 存储过程中使用事务并回滚出错的SQL语句(C#事务处理)
- C# 使用DataSet+dataAdapter操作后台数据库之事务处理方法1,欢迎拍砖
- 利用C#事务处理对数据库进行多重操作
- c#中的事务处理
- c#事务处理(Transaction)
- .net企业应用高级编程 第五章 自动化处理和事务处理(基于C# XML)案例
- C#中的事务处理
- C#处理Access中事务的方法
- C# 事务处理
- 领域模型中分散的事务如何集中统一处理(C#解决方案)