设为首页 加入收藏

TOP

[C#]分享一个以前的项目使用的DataBaseAccess类(七)
2014-11-24 14:34:34 来源: 作者: 【 】 浏览:8
Tags:分享 一个 以前 项目 使用 DataBaseAccess
taReader ExecuteSqlDr(string strSql)
{
debug("Now Execute DataBaseAccess's Method:ExecuteSqlDr(string),Return Type:SqlDataReader ");
return ExecuteSqlDr(new SqlCommand(strSql));
}


///


/// Execute SQL Command,return SqlDataReader.
///

/// SQL Command which will be Executed
/// SQL Parameters Collection
/// Return SqlDataReader
public SqlDataReader ExecuteSqlDr(string strSql, SqlParameter[] sqlParameters)
{
debug("Now Execute DataBaseAccess's Method:ExecuteSqlDr(string, SqlParameter[]),Return Type:SqlDataReader ");
return ExecuteSqlDr(SQLHelper.CreateCommand(strSql, sqlParameters, this.conn));
}


#endregion


#region ExecuteSqlTarn


///


/// Execute SQL Command,Keep affair.
///

/// SQL Command which will be Executed
/// SQL Parameters Collection
public void ExecuteSqlTran(string strSql, SqlParameter[] sqlParameters)
{
conn.Open();
SqlCommand sqlcmd = SQLHelper.CreateCommand(strSql, sqlParameters, this.conn);
using(SqlTransaction sqltrans = this.conn.BeginTransaction())
{
sqlcmd.Transaction = sqltrans;
try
{
sqlcmd.ExecuteNonQuery();
sqltrans.Commit();
}
catch (System.Data.SqlClient.SqlException E)
{
sqltrans.Rollback();
throw E;
}
finally
{
sqlcmd.Dispose();
this.conn.Close();
}
}
}


///


/// execute SQL script,Keep SqlTransaction 。
///

/// save sql command and sql parameter
public void ExecuteSqlTran(Dictionary objSqlList)
{
conn.Open();
using (SqlTransaction trans = conn.BeginTransaction())
{
try
{
SqlCommand sqlcmd = new SqlCommand();
//circulation
foreach (KeyValuePair kvp in objSqlList)
{
//the key value is by|Division ,Serial number|sql script
string[] tmp = kvp.Key.ToString().Split(new char[] { '|' });
string cmdText = tmp[1];
//get SqlParameter value
SqlParameter[] sqlParms = kvp.Value;
if (sqlParms!=null)
sqlcmd = SQLHelper.CreateCommand(cmdText, sqlParms, this.conn);
sqlcmd.Transaction = trans;
int val = sqlcmd.ExecuteNonQuery();
//clear SqlParameter
sqlcmd.Parameters.Clear();
}
trans.Commit();
}
catch
{
trans.Rollback();
thr
首页 上一页 4 5 6 7 8 9 10 下一页 尾页 7/10/10
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C# 在winform画面上点击某个区域.. 下一篇C#中生成验证码的类

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: