C# 连接 Access 操作[转,整理]

来源:互联网 发布:韩国釜林事件知乎 编辑:程序博客网 时间:2024/05/20 22:01

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;        }     }//}// 
原创粉丝点击