📄 oledboperator.cs
字号:
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using System.Data;
using System.Data.OleDb;
namespace IDbAccess
{
//OLEDB的数据库访问类:
class OleDbAccess : IDbAccess
{
private OleDbConnection conn; //数据库连接对象
private OleDbTransaction trans; //事务处理对象
private bool inTransaction = false; //true表示当前正处于事务中
public IDbConnection Connection
{
get
{
return this.conn;
}
}
public OleDbAccess(string strConnection)
{
this.conn = new OleDbConnection(strConnection);
}
public void Open()
{
if (conn.State != ConnectionState.Open)
{
this.conn.Open();
}
}
public void Close()
{
if (conn.State == ConnectionState.Open)
{
this.conn.Close();
}
}
public void BeginTrans()
{
trans = conn.BeginTransaction();
inTransaction = true;
}
public void CommitTrans()
{
trans.Commit();
inTransaction = false;
}
public void RollbackTrans()
{
trans.Rollback();
inTransaction = false;
}
public void ExecSQLNoDataSet(string strSql, string[] strParams, object[] strValues)
{
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = this.conn;
if (inTransaction)
{
cmd.Transaction = trans;
}
if ((strParams != null) && (strParams.Length != strValues.Length))
{
throw new Exception("查询参数和值不对应");
}
cmd.CommandText = strSql;
if (strParams != null)
{
for (int i = 0; i < strParams.Length; i++)
{
cmd.Parameters.Add(strValues[i]);
}
}
cmd.ExecuteNonQuery();
}
public void ExecSQLNoDataSet(string strSql)
{
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = this.conn;
if (inTransaction)
{
cmd.Transaction = trans;
}
cmd.CommandText = strSql;
cmd.ExecuteNonQuery();
}
public DataSet ExecSQLGetDataSet(string QueryString)
{
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = this.conn;
if (inTransaction)
{
cmd.Transaction = trans;
}
DataSet ds = new DataSet();
OleDbDataAdapter ad = new OleDbDataAdapter();
cmd.CommandText = QueryString;
ad.SelectCommand = cmd;
ad.Fill(ds);
return ds;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -