`
long546324
  • 浏览: 207177 次
  • 性别: Icon_minigender_1
  • 来自: 云南
社区版块
存档分类
最新评论

.net连接ACCESS数据库的助手类

    博客分类:
  • .net
阅读更多
web.config文件  access数据库必须放在app_data目录下
<connectionStrings>
    <add name="connStr" connectionString="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=|DataDirectory|数据库名称.mdb" />    
</connectionStrings>


OleDbHelper.cs文件,别忘了添加引用:System.Configuration
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Configuration;
using System.Data.OleDb;

namespace DAL
{
    public class OleDbHelper 
    {
        public static OleDbCommand cmd = null;
        public static OleDbConnection conn = null;

        public static string connstr = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString;
        public OleDbHelper()
        { }
        #region 建立数据库连接对象
        /// <summary>
        /// 建立数据库连接
        /// </summary>
        /// <returns>返回一个数据库的连接OleDbConnection对象</returns>
        public static OleDbConnection init()
        {
            try
            {
                conn = new OleDbConnection(connstr);
                if (conn.State != ConnectionState.Open)
                {
                    conn.Open();
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message.ToString());
            }
            return conn;
        }
        #endregion

        #region 设置OleDbCommand对象
        /// <summary>
        /// 设置OleDbCommand对象       
        /// </summary>
        /// <param name="cmd">OleDbCommand对象 </param>
        /// <param name="cmdText">命令文本</param>
        /// <param name="cmdType">命令类型</param>
        /// <param name="cmdParms">参数集合</param>
        private static void SetCommand(OleDbCommand cmd, string cmdText, CommandType cmdType, OleDbParameter[] cmdParms)
        {
            cmd.Connection = conn;
            cmd.CommandText = cmdText;
            cmd.CommandType = cmdType;
            if (cmdParms != null)
            {
                cmd.Parameters.AddRange(cmdParms);
            }
        }
        #endregion

        #region 执行相应的OleDb语句,返回相应的DataSet对象
        /// <summary>
        /// 执行相应的OleDb语句,返回相应的DataSet对象
        /// </summary>
        /// <param name="OleDbstr">OleDb语句</param>
        /// <returns>返回相应的DataSet对象</returns>
        public static DataSet GetDataSet(string OleDbstr)
        {
            DataSet set = new DataSet();
            try
            {
                init();
                OleDbDataAdapter adp = new OleDbDataAdapter(OleDbstr, conn);
                adp.Fill(set);
                conn.Close();
            }
            catch (Exception e)
            {
                throw new Exception(e.Message.ToString());
            }
            return set;
        }
        #endregion

        #region 执行相应的OleDb语句,返回相应的DataSet对象
        /// <summary>
        /// 执行相应的OleDb语句,返回相应的DataSet对象
        /// </summary>
        /// <param name="OleDbstr">OleDb语句</param>
        /// <param name="tableName">表名</param>
        /// <returns>返回相应的DataSet对象</returns>
        public static DataSet GetDataSet(string OleDbstr, string tableName)
        {
            DataSet set = new DataSet();
            try
            {
                init();
                OleDbDataAdapter adp = new OleDbDataAdapter(OleDbstr, conn);
                adp.Fill(set, tableName);
                conn.Close();
            }
            catch (Exception e)
            {
                throw new Exception(e.Message.ToString());
            }
            return set;
        }
        #endregion

        #region 执行不带参数OleDb语句,返回所影响的行数
        /// <summary>
        /// 执行不带参数OleDb语句,返回所影响的行数
        /// </summary>
        /// <param name="cmdstr">增,删,改OleDb语句</param>
        /// <returns>返回所影响的行数</returns>
        public static int ExecuteNonQuery(string cmdText)
        {
            int count;
            try
            {
                init();
                cmd = new OleDbCommand(cmdText, conn);
                count = cmd.ExecuteNonQuery();
                conn.Close();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message.ToString());
            }
            return count;
        }
        #endregion

        #region 执行带参数OleDb语句或存储过程,返回所影响的行数
        /// <summary>
        ///  执行带参数OleDb语句或存储过程,返回所影响的行数
        /// </summary>
        /// <param name="cmdText">带参数的OleDb语句和存储过程名</param>
        /// <param name="cmdType">命令类型</param>
        /// <param name="cmdParms">参数集合</param>
        /// <returns>返回所影响的行数</returns>
        public static int ExecuteNonQuery(string cmdText, CommandType cmdType, OleDbParameter[] cmdParms)
        {
            int count;
            try
            {
                init();
                cmd = new OleDbCommand();
                SetCommand(cmd, cmdText, cmdType, cmdParms);
                count = cmd.ExecuteNonQuery();
                cmd.Parameters.Clear();
                conn.Close();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message.ToString());
            }
            return count;
        }
        #endregion

        #region 执行不带参数OleDb语句,返回一个从数据源读取数据的OleDbDataReader对象
        /// <summary>
        /// 执行不带参数OleDb语句,返回一个从数据源读取数据的OleDbDataReader对象
        /// </summary>
        /// <param name="cmdstr">相应的OleDb语句</param>
        /// <returns>返回一个从数据源读取数据的OleDbDataReader对象</returns>
        public static OleDbDataReader ExecuteReader(string cmdText)
        {
            OleDbDataReader reader;
            try
            {
                init();
                cmd = new OleDbCommand(cmdText, conn);
                reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);

            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message.ToString());
            }
            return reader;
        }
        #endregion

        #region 执行带参数的OleDb语句或存储过程,返回一个从数据源读取数据的OleDbDataReader对象
        /// <summary>
        /// 执行带参数的OleDb语句或存储过程,返回一个从数据源读取数据的OleDbDataReader对象
        /// </summary>
        /// <param name="cmdText">OleDb语句或存储过程名</param>
        /// <param name="cmdType">命令类型</param>
        /// <param name="cmdParms">参数集合</param>
        /// <returns>返回一个从数据源读取数据的OleDbDataReader对象</returns>
        public static OleDbDataReader ExecuteReader(string cmdText, CommandType cmdType, OleDbParameter[] cmdParms)
        {
            OleDbDataReader reader;
            try
            {
                init();
                cmd = new OleDbCommand();
                SetCommand(cmd, cmdText, cmdType, cmdParms);
                reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message.ToString());
            }
            return reader;
        }
        #endregion

        #region 执行不带参数OleDb语句,返回一个DataTable对象
        /// <summary>
        /// 执行不带参数OleDb语句,返回一个DataTable对象
        /// </summary>
        /// <param name="cmdText">相应的OleDb语句</param>
        /// <returns>返回一个DataTable对象</returns>
        public static DataTable GetDataTable(string cmdText)
        {

            OleDbDataReader reader;
            DataTable dt = new DataTable();
            try
            {
                init();
                cmd = new OleDbCommand(cmdText, conn);
                reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                dt.Load(reader);
                reader.Close();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message.ToString());
            }
            return dt;
        }
        #endregion

        #region 执行带参数的OleDb语句或存储过程,返回一个DataTable对象
        /// <summary>
        /// 执行带参数的OleDb语句或存储过程,返回一个DataTable对象
        /// </summary>
        /// <param name="cmdText">OleDb语句或存储过程名</param>
        /// <param name="cmdType">命令类型</param>
        /// <param name="cmdParms">参数集合</param>
        /// <returns>返回一个DataTable对象</returns>
        public static DataTable GetDataTable(string cmdText, CommandType cmdType, OleDbParameter[] cmdParms)
        {
            OleDbDataReader reader;
            DataTable dt = new DataTable();
            try
            {
                init();
                cmd = new OleDbCommand();
                SetCommand(cmd, cmdText, cmdType, cmdParms);
                reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                dt.Load(reader);
                reader.Close();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message.ToString());
            }
            return dt;
        }
        #endregion

        #region 执行不带参数OleDb语句,返回结果集首行首列的值object
        /// <summary>
        /// 执行不带参数OleDb语句,返回结果集首行首列的值object
        /// </summary>
        /// <param name="cmdstr">相应的OleDb语句</param>
        /// <returns>返回结果集首行首列的值object</returns>
        public static object ExecuteScalar(string cmdText)
        {
            object obj;
            try
            {
                init();
                cmd = new OleDbCommand(cmdText, conn);
                obj = cmd.ExecuteScalar();
                conn.Close();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message.ToString());
            }
            return obj;
        }
        #endregion

        #region 执行带参数OleDb语句或存储过程,返回结果集首行首列的值object
        /// <summary>
        /// 执行带参数OleDb语句或存储过程,返回结果集首行首列的值object
        /// </summary>
        /// <param name="cmdText">OleDb语句或存储过程名</param>
        /// <param name="cmdType">命令类型</param>
        /// <param name="cmdParms">返回结果集首行首列的值object</param>
        /// <returns></returns>
        public static object ExecuteScalar(string cmdText, CommandType cmdType, OleDbParameter[] cmdParms)
        {
            object obj;
            try
            {
                init();
                cmd = new OleDbCommand();
                SetCommand(cmd, cmdText, cmdType, cmdParms);
                obj = cmd.ExecuteScalar();
                conn.Close();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message.ToString());
            }
            return obj;
        }
        #endregion
    }
}
0
0
分享到:
评论

相关推荐

    完整的asp.net连接access数据库操作类

    完整的asp.net连接access数据库操作类,包含多种操作。好好收藏在此,,,

    vb.net 操作Access数据库

    在VB.NET编程环境中,操作Access数据库是一项常见的任务,这主要涉及到ADO.NET库的使用,它提供了与各种数据库交互的能力。本篇文章将详细讲解如何利用VB.NET进行Access数据库的增删改查操作。 首先,我们需要引入...

    VB .net连接Access数据库实例

    在VB .NET中,我们可以使用`OleDbConnection`类来连接Access数据库。例如: ```vb Dim connString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\path\to\your\record.mdb;" Dim conn As New ...

    vb.net 连接access数据库

    这是vb.net 与本地数据库连接的实例,对于怎么读取数据库里面的数据到表格有很好的示范作用,适用于刚入门的人。这是vb.net 与本地数据库连接的实例,对于怎么读取数据库里面的数据到“表格”有很好的示范作用,适用...

    使用VB.NET对ACCESS数据库进行添加,删除,插入,修改,查询等用法

    在VB.NET中与ACCESS数据库进行交互是初学者和专业开发者常用的一种技术,因为ACCESS数据库简单易用,适合小型项目。本教程将详细讲解如何利用VB.NET进行添加、删除、插入、修改和查询等基本操作。 首先,我们需要在...

    .Net连接Access数据库字符串

    一个典型的.NET连接Access数据库的连接字符串如下所示: ```plaintext Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:\mydatabase.mdb;JetOLEDB:DatabasePassword=MyDbPassword; ``` 接下来,我们将逐一解析这段...

    asp.net连接Access数据库

    在本例中,我们讨论的是如何使用 ASP.NET 连接到 Access 数据库进行数据操作,如读取、插入、更新和删除数据。Access 数据库是一种轻量级的关系型数据库管理系统,适用于小型应用或开发阶段的数据存储。 首先,要在...

    asp.net+access数据库小型网站

    使用ASP.NET连接Access数据库,主要涉及以下步骤: 1. 添加引用:在项目中引入System.Data.OleDb命名空间。 2. 创建连接字符串:格式通常为"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=数据库路径;Persist ...

    ASP.NET连接Access开发数据库资料

    以上就是一个简化的ASP.NET连接Access数据库并进行数据操作的例子。在实际开发中,我们还需要考虑错误处理、事务控制、安全性(如参数化查询防止SQL注入)、性能优化(如批处理操作)等问题。通过学习和实践“ASP...

    vb.net操作access数据库实例

    在VB.NET中,我们通常使用`System.Data.OleDb`命名空间内的类来连接和操作Access数据库。 2. **连接字符串**: 要连接到Access数据库,你需要创建一个连接字符串。例如: ``` Dim connectionString As String = ...

    vb.net 使用Access数据库保存和读取图片文件

    在VB.NET中,Access数据库常被用于小型项目的数据存储,包括保存和读取不同类型的数据,如文本、数字,甚至图片。本教程将详细介绍如何利用VB.NET与Access数据库交互,实现图片文件的保存与读取,并将结果展示在...

    asp.net连接access数据库

    1. ASP.NET中使用C#连接Access数据库的基本步骤。 2. 如何构建正确的连接字符串,包括提供程序、数据源、数据库密码等信息。 3. 使用`OleDbConnection`和`OleDbCommand`对象进行数据库操作。 4. `|DataDirectory|`的...

    vb.net 与access 数据库计算地基沉降

    2. **ADO.NET与Access数据库连接**:在VB.NET中,我们通常使用ADO.NET(ActiveX Data Objects .NET)组件来与数据库进行交互。通过创建`OleDbConnection`对象,可以建立与Access数据库的连接。连接字符串是关键,它...

    ASP.NET连接ACCESS数据库

    ### ASP.NET连接ACCESS数据库知识点详解 #### 一、概述 在Web开发中,数据库操作是一项基本且重要的功能。本文档将详细介绍如何使用ASP.NET技术连接并操作Microsoft Access数据库。通过以下示例代码,我们将了解...

    c# .net连接access数据库登录

    通过以上步骤,你可以实现C# .NET连接Access数据库的用户登录功能。然而,随着项目的扩大和复杂性增加,考虑使用更强大的数据库系统(如SQL Server)以及更安全的身份验证机制会更合适。同时,ODBC数据源的配置虽然...

    VB.net调用Access数据库

    总的来说,VB.NET调用Access数据库涉及数据源的添加、数据库连接的创建以及数据绑定到UI控件。遇到错误时,通常需要确保系统具备必要的组件,如Access数据库引擎,同时注意平台兼容性问题。通过以上步骤,开发者可以...

    【ASP.NET编程知识】ASP.NET连接 Access数据库的几种方法.docx

    ASP.NET 连接 Access 数据库的多种方法 在 ASP.NET 应用程序中连接 Access 数据库是非常重要的,下面我们将介绍多种连接 Access 数据库的方法。 一、使用 web.config 配置文件连接 Access 数据库 在 ASP.NET 应用...

    用VB.NET连接Access数据库并显示数据库中表信息

    ### 使用VB.NET连接Access数据库并显示数据库中的表信息 #### 概述 本文将详细介绍如何在VB.NET中实现与Microsoft Access数据库的连接,并通过代码展示如何读取指定表中的数据,将其显示在文本框(TextBox)中。此...

    vb.net 操作access数据库 源程序

    在VB.NET编程环境中,操作Access数据库是一项常见的任务,这涉及到数据的查询、修改和添加等基本操作。Access数据库是Microsoft Office套件中的一个组件,它提供了便捷的数据存储和管理功能,尤其是在小型应用或个人...

    VB.NET读写ACCESS数据库类

    本篇将详细介绍如何利用VB.NET创建一个封装好的ACCESS数据库读写类,并通过实际应用案例进行验证。 首先,我们需要引入`System.Data.OleDb`命名空间,它提供了访问OLE DB数据源(包括ACCESS)的接口。以下是一个...

Global site tag (gtag.js) - Google Analytics