设为首页 加入收藏

TOP

excel宏调用webservice使用存储过程同步excel数据的方法(二)
2015-11-21 01:58:21 来源: 作者: 【 】 浏览:1
Tags:excel 调用 webservice 使用 存储 过程 同步 数据 方法
t DataTable GetDataTable(CommandType cmdType, string cmdText, Nameva lueCollection pars); } }

?

OledbHelper.cs

using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Text;
using System.Data;
using System.Data.Common;
using System.Data.OleDb;

namespace DataHelper
{
class OledbHelper : DbHelper
{
private OleDbConnection conn;
private OleDbTransaction trans;

private bool inTransaction = false; //指示当前是否正处于事务中

///


/// 构造函数,初始OledbConnection对象
///

///
public OledbHelper(string StrConnection)
{
this.conn = new OleDbConnection(StrConnection);
}

///

/// 获取Conneciton
///

public override IDbConnection Connection
{
get { return this.conn; }
}

///

/// 打开数据库连接
///

public override void Open()
{
if (conn.State != ConnectionState.Open)
{
this.conn.Open();
}
}


///

/// 关闭数据库连接,释放资源
///

public override void Close()
{
if (this.trans != null)
{
this.trans.Dispose();
}

if (conn.State != ConnectionState.Closed)
{
conn.Close();
}


conn.Dispose();
}

public override void BeginTrans()
{
trans = conn.BeginTransaction();
inTransaction = true;
}
public override void CommitTrans()
{
trans.Commit();
inTransaction = false;
}

public override void RollBackTrans()
{
trans.Rollback();
inTransaction = false;
}


///

/// 参数准备
///

///
///
///
public void PrepareCommand(OleDbCommand cmd, CommandType cmdType, string cmdText, Nameva lueCollection pars)
{
if (this.trans != null)
{
cmd.Transaction = this.trans;
}
cmd.Connection = conn;
cmd.CommandType = cmdType;
cmd.CommandText = cmdText;

if (pars != null && pars.Count > 0)
{
string[] keys = pars.AllKeys;
for (int i = 0; i < pars.Count; i++)
{
cmd.Parameters.AddWithValue(keys[i], pars[i]);
}
}

}



public override int ExecuteNonQuery(CommandType cmdType, string cmdText, Nameva lueCollection pars)
{

using (OleDbCommand cmd = new OleDbCommand())
{
this.PrepareCommand(cmd, cmdType, cmdText, pars);

int val = cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
return val;
}

}

public override DbDataReader ExecuteReader(CommandType cmdType, string cmdText, Nameva lueCollection pars)
{
using (OleDbCommand cmd = new OleDbCommand())
{
this.PrepareCommand(cmd, cmdType, cmdText, pars);
DbDataReader dr = cmd.ExecuteReader();
cmd.Parameters.Clear();
return dr;
}

}

public override object ExecuteScalar(CommandType cmdType, string cmdText, Nameva lueCollection pars)
{

using (OleDbCommand cmd = new OleDbCommand())
{
this.PrepareCommand(cmd, cmdType, cmdText, pars);
object val = cmd.ExecuteScalar();
cmd.Parameters.Clear();
return val;
}
}

public override DataTable GetDataTable(CommandType cmdType, string cmdText, Nameva lueCollection pars)
{
using (OleDbCommand cmd = new OleDbCommand())
{
DataTable dt = new DataTable();
this.PrepareCommand(cmd, cmdType, cmdText, pars);

using (DbDataAdapter da = new OleDbDataAdapter())
{
da.SelectCommand = cmd;
da.Fill(dt);
cmd.Parameters.Clear();
return dt;
}

}

}

}
}

SqlHelper.cs

using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Text;
using System.Data;
using System.Data.Common;
using System.Data.SqlClient;

namespace DataHelper
{
class SqlHelper : DbHelper
{
private SqlConnection conn;
private SqlTransaction trans;
private bool inTransaction = false; //指示当前是否正处于事务中

///


/// 获取IDbConnection
///

public override IDbConnection Connection
{
get { return this.conn; }
}

///

/// 构造函数,初始SqlConnection对象
///

///
public SqlHelper(string StrConnection)
{
this.conn = new SqlConnection(StrConnection);
}

///

/// 打开数据库连接
///

public override void Open()
{
if (conn.State != ConnectionState.Open)
{
this.conn.Open();
}
}

///

/// 关闭数据库连接,释放资源
///

public override void Close()
{
if (this.trans != null)
{
this.trans.Dispose();
}

if (conn.State != ConnectionState.Closed)
{
conn.Close();
}


conn.Dispose();
}

///

/// 开始事务
///

public override void BeginTrans()
{
trans = conn.BeginTransaction();
inTransaction = true;
}
///

/// 提交事务
///

public override void CommitTrans()
{
trans.Commit();
inTransaction = false;
}

///

/// 回滚事务
///

public override void RollBackTrans()
{
trans.Rollback();
inTransaction = false;
}


///

/// 参数准备
///

///
///
///
public void PrepareCommand(SqlCommand cmd, CommandType cmdType, string cmdText, Nameva lueCollectio
首页 上一页 1 2 3 下一页 尾页 2/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇mysql本地访问linux服务器,出现S.. 下一篇MySQL自带函数整理与使用

评论

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