zoukankan      html  css  js  c++  java
  • c#.net连接access操作类

     

    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
    程序设计开始:

    1、按要求建立Access数据库及数据表

    2、编写数据库访问、操作的公用类,此类可以复用到以后开发的任何系统中

    (1)、新建一个C# 类库项目, 命名为“Com.LXJ”,设置项目属性:程序集名称、默认命名空间均为“Com.LXJ”

    (2)、在此项目目录下创建目录Database,新建C# 类文件ConnDbForAccess.cs 在Database目录下。

                  添加引用:System.Web.dll

    (3)、编写ConnDbForAccess.cs 的代码

    代码
    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;
    }


    }
    //
    }//
  • 相关阅读:
    struct page*
    ARM平台linux内核Notes 1
    CTDIY1字符设备驱动的使用
    深入理解linux内核读书笔记1
    在linux下设置pl2303串口
    struct per_cpu_pageset
    ARM平台linux内核Notes 2
    CTDIY2字符设备驱动的注册
    深入理解linux内核读书笔记2
    How to rollback a transaction in TSQL
  • 原文地址:https://www.cnblogs.com/strivers/p/1897546.html
Copyright © 2011-2022 走看看