zoukankan      html  css  js  c++  java
  • 连接并操作Access数据库C#类


    1、配置web.config文件:配置数据库连接参数

    <configuration>
    <appSettings/>
    <connectionStrings>

    <add name="ConnectionString" connectionString="PRovider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\TeacherSystem\App_Data\db.mdb;Jet OLEDB:Database PassWord=123"
    providerName="System.Data.OleDb" />
    </connectionStrings>

    2、操作Access数据库C#类

    using System;
    using System.Data;
    using System.Data.OleDb;
    using System.Web;
    using System.Web.UI;
    using System.Configuration;
    
    namespace Com.LXJ.Database
    {
    /// <summary>
    /// conn 的摘要说明。
    /// </summary>
    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;
    }
    
    
    }
    }
  • 相关阅读:
    无线网络安全一瞥
    静态代码分析与代码质量安全
    构建移动应用测试(一)
    移动应用App测试与质量管理一
    企业商务差旅信息化管理与移动App
    身份管理系统与解决方案
    微信指数是怎么调取数据来源的
    微信正式上线“微信指数”,基于微信大数据分析的移动端指数
    新版微信小程序即将上线 新增微信支付功能
    微信公众号留言置顶功能上线
  • 原文地址:https://www.cnblogs.com/sosoft/p/2684025.html
Copyright © 2011-2022 走看看