C#连接ACCESS数据库的类

本文介绍了一种在ASP.NET中操作Access数据库的方法,通过在web.config中设置连接字符串,并利用自定义类实现数据库连接、查询及执行SQL语句等功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

      首先在web.config里面的<configuration>与</configuration>之间添加如下:

<appSettings>
  <add key="connString" value="Data Source=E:\Develop\editor\App_Data\db.mdb" />
  </appSettings>

    推荐做法是把数据库文件放在App_Data目录下,即使人家知道路径也是禁止下载的。
    对应的App_code目录下的类

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;//这个是添加的引用
///
/// 这个是操作Access数据库的类,提供2个方法,getSQLTable获取表,executeSQL执行所需要的SQL语句
///
public class dbClient
{  
    private string connectionString;   
 public dbClient()//构造连接字符串
 {
        connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;";       
        connectionString +=@System.Configuration.ConfigurationSettings.AppSettings["connString"].ToString();
        //加了@是为了不让\字符变为转义字符
        //充分利用系统自带的方法来访问web.config配置文件
 }
    public OleDbConnection createConnection()//返回一个连接
    {
        return new OleDbConnection(connectionString);
    }
    public DataTable getSQLTable(string selectSQL, string tableName)//获得一个表,2个参数,一个SQL语句,一个表名
    {
        DataTable table = new DataTable(tableName);
        OleDbConnection oleConnection = this.createConnection();
        try
        {           
            OleDbDataAdapter oleDataAdapter = new OleDbDataAdapter(selectSQL, connectionString);
            oleDataAdapter.Fill(table);           
        }
        catch (System.Data.OleDb.OleDbException ex)
        {
            throw ex;
        }
        catch (System.Exception ex)
        {
            throw ex;
        }
        finally
        {
            if (oleConnection.State != ConnectionState.Closed)
            {
                oleConnection.Close();
            }
        }
        return table;
    }
    public int executeSQL(string cmdText)//执行SQL语句,1个参数,为所执行的语句,返回整数值为判断所影响的行数
    {
        int iValue = -1;
        OleDbConnection oleConnecion = this.createConnection();
        oleConnecion.Open();
        OleDbTransaction oleTransaction = oleConnecion.BeginTransaction();
        try
        {
            OleDbCommand oleCommand = new OleDbCommand();
            oleCommand.Connection = oleConnecion;         
            oleCommand.CommandText = cmdText;
            oleCommand.Transaction = oleTransaction;
            iValue = oleCommand.ExecuteNonQuery();
            oleTransaction.Commit();
        }
        catch (System.Data.OleDb.OleDbException ex)
        {
            oleTransaction.Rollback();
            throw ex;
        }
        catch (System.Exception ex2)
        {
            throw ex2;
        }
        finally
        {
            oleConnecion.Close();
        }
        return iValue;
    }   
   }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值