using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.OleDb;
using System.Linq;
using System.Web; namespace vr
{
public class ConnDbForAcccess
{
/// <summary>
/// 连接数据库字符串
/// </summary>
private string connectionString; /// <summary>
/// 存储数据库连接(保护类,只有由它派生的类才能访问)
/// </summary>
protected OleDbConnection Connection; /// <summary>
/// 构造函数:数据库的默认连接
/// </summary>
public ConnDbForAcccess()
{
string connStr;
connStr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString.ToString();
// connStr = System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"].ToString(); //从web.config配置中读取
connectionString = connStr;
//connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + HttpContext.Current.Request.PhysicalApplicationPath + connStr;
// connectionString = System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"].ToString();
//
Connection = new OleDbConnection(connectionString);
} /// <summary>
/// 构造函数:带有参数的数据库连接
/// </summary>
/// <param name="newConnectionString"></param>
public ConnDbForAcccess(string newConnectionString)
{
//connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + HttpContext.Current.Request.PhysicalApplicationPath + newConnectionString;
connectionString = newConnectionString;
Connection = new OleDbConnection(connectionString);
} /// <summary>
/// 获得连接字符串
/// </summary>
public string ConnectionString
{
get
{
return connectionString;
}
} /// <summary>
/// 执行SQL语句没有返回结果,如:执行删除、更新、插入等操作
/// </summary>
/// <param name="strSQL"></param>
/// <returns>操作成功标志</returns>
public bool ExeSQL(string strSQL)
{
bool resultState = false; Connection.Open();
OleDbTransaction myTrans = Connection.BeginTransaction();
OleDbCommand command = new OleDbCommand(strSQL, Connection, myTrans); try
{
command.ExecuteNonQuery();
myTrans.Commit();
resultState = true;
}
catch
{
myTrans.Rollback();
resultState = false;
}
finally
{
Connection.Close();
}
return resultState;
} /// <summary>
/// 执行SQL语句返回结果到DataReader中
/// </summary>
/// <param name="strSQL"></param>
/// <returns>dataReader</returns>
private OleDbDataReader ReturnDataReader(string strSQL)
{
Connection.Open();
OleDbCommand command = new OleDbCommand(strSQL, Connection);
OleDbDataReader dataReader = command.ExecuteReader();
Connection.Close(); return dataReader;
} /// <summary>
/// 执行SQL语句返回结果到DataSet中
/// </summary>
/// <param name="strSQL"></param>
/// <returns>DataSet</returns>
public DataSet ReturnDataSet(string strSQL)
{
Connection.Open();
DataSet dataSet = new DataSet();
OleDbDataAdapter OleDbDA = new OleDbDataAdapter(strSQL, Connection);
OleDbDA.Fill(dataSet, "objDataSet"); Connection.Close();
return dataSet;
} /// <summary>
/// 执行一查询语句,同时返回查询结果数目
/// </summary>
/// <param name="strSQL"></param>
/// <returns>sqlResultCount</returns>
public int ReturnSqlResultCount(string strSQL)
{
int sqlResultCount = 0; try
{
Connection.Open();
OleDbCommand command = new OleDbCommand(strSQL, Connection);
OleDbDataReader dataReader = command.ExecuteReader(); while (dataReader.Read())
{
sqlResultCount++;
}
dataReader.Close();
}
catch
{
sqlResultCount = 0;
}
finally
{
Connection.Close();
}
return sqlResultCount;
}
}
}

  

最新文章

  1. linux下如何添加一个用户并且让用户获得root权限
  2. 一分钟搞定AlloyTouch图片轮播
  3. Android Fragment完全解析,关于碎片你所需知道的一切
  4. 深入理解Loadrunner中的Browser Emulation
  5. 得到python某个模块的路径
  6. C# 反射 通过类名创建类实例
  7. 封装fastjson为spring mvc的json view
  8. Java多线程实现......(1,继承Thread类)
  9. css 浮动和清除浮动
  10. iOS NFC
  11. hy这个破项目
  12. Typora使用说明(记录总结)
  13. python基础系列教程,数学基础系列教程,数据分析系列教程,神经网络系列教程,深度学习系列视频教程分享交流
  14. 11月28日 记录一个错误❌,看ruby on rails --active support core extensions--present? &amp;&amp; presence &amp;&amp; duplicable?
  15. json封装数据,然后通过创造的标签调用
  16. redis连接池 jedis-2.9.0.jar+commons-pool2-2.4.2.jar
  17. API文档管理平台
  18. Atiti。流量提升软件设计大纲规划 v1 q45
  19. smartJS 0.1 API 讲解 - Trigger
  20. mac install PyQt5

热门文章

  1. hdu1754I Hate It(splay)
  2. 简单的鼠标经过特效-mouse事件
  3. Docker快速构建Redis集群(cluster)
  4. 使用Intellij IDEA搭建一个简单的Maven项目
  5. 从零开始利用vue-cli搭建简单音乐网站(四)
  6. Objective-C Data Encapsulation
  7. threadLocal遇上线程池导致局部变量变化
  8. ubuntu 14.04 安装npm
  9. 如何计算CDS view里两个时间戳之间的天数间隔
  10. leecode 旋转数组