• .net 操作Access数据库


    using System;
    using System.Collections.Generic;
    using System.Configuration;
    using System.Data;
    using System.Data.OleDb;
    using System.Linq;
    using System.Web;
    
    namespace vr
    {
        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;
            }
        }
    }
    

      

  • 相关阅读:
    node起本地服务器以及实现代理,前端接口转发
    一键前端代理,一行命令开启nginx容器,代理前端页面
    go语言学习笔记
    patch需要数据格式前端算法,patch算法基础,两个对象对比取差异属性
    react-native中使用Echarts,自己使用WebView封装Echarts经验
    如何用js自己实现Animate运动函数
    vue中的表单异步校验方法封装
    Entity Framework6使用SQL Server Compact免安装部署
    WCF异常传播
    解决.net的堆碎片化带来的内存占用过大的问题
  • 原文地址:https://www.cnblogs.com/guozhe/p/6603523.html
Copyright © 2020-2023  润新知