Home Database Mysql Tutorial 连接Access数据库的DAL层操作代码

连接Access数据库的DAL层操作代码

Jun 07, 2016 pm 03:44 PM
access using code operate database connect

using System; using System.Data; using System.Configuration; using System.Web; using System.Collections; using System.Collections.Generic; using System.Text; using System.IO; using ACS = System.Data.OleDb; namespace DAL { public class Data

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using System.IO;
using ACS = System.Data.OleDb;
namespace DAL
{
    public class DataAccess
    {
        //创建连接access数据库的字符串
        private string AccessCennection = null;

        #region 构造函数
        ///


        /// 构造函数创建连接字符串
        ///

        public DataAccess()
        {
            this.AccessCennection = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=C:\\Inetpub\\wwwroot\\biz\\App_Data\\ccc.mdb";//连接数据库字符串
        }
        #endregion

        #region 创建连接数据库的连接
        ///


        /// 创建连接数据库的连接
        ///

        /// 连接数据库的字符串
        /// 返回实体连接
        private ACS.OleDbConnection CreateACS_Connection(string acs_connection)
        {
            return new ACS.OleDbConnection(acs_connection);
        }
        #endregion

        #region 创建操纵数据库的实体命令
        ///


        /// 创建操纵数据库的实体命令
        ///

        /// 数据库操纵语言
        /// 数据库连接实体
        /// 数据库命令实体
        private ACS.OleDbCommand CreateACS_Command(string sql, ACS.OleDbConnection acs_connection)
        {
            return new ACS.OleDbCommand(sql, acs_connection);
        }
        #endregion

        #region 创建填充数据用的数据适配器
        ///


        /// 创建填充数据用的数据适配器
        ///

        /// 数据库命令实体
        /// 数据库适配器的实体
        private ACS.OleDbDataAdapter CreateACS_Adapter(ACS.OleDbCommand acs_command)
        {
            return new ACS.OleDbDataAdapter(acs_command);
        }
        #endregion

        #region 通过查询语句返回用户需要的结果
        ///


        /// 通过查询语句返回用户需要的结果
        ///

        /// 查询语句
        /// 返回的结果集
        public DataSet Select(string sql)
        {
            ACS.OleDbConnection acs_connection = null;
            ACS.OleDbCommand acs_command;
            ACS.OleDbDataAdapter acs_adapter;
            DataSet ds = new DataSet();
            try
            {
                acs_connection = CreateACS_Connection(this.AccessCennection);
                acs_command = CreateACS_Command(sql, acs_connection);
                acs_adapter = CreateACS_Adapter(acs_command);
                acs_connection.Open();
                acs_adapter.Fill(ds);
            }
            catch (Exception acse)
            {

            }
            finally
            {
                acs_connection.Close();
            }
            return ds;
        }
        #endregion

        #region 批处理执行SQL操作
        ///


        /// 批处理执行SQL操作
        ///

        /// SQL语句泛型类
        /// 是否成功
        public Boolean ExecuteSQL(List SqlStrings)
        {
            bool success = true;
            int Rows = 0;
            ACS.OleDbConnection acs_connection = null;
            acs_connection = CreateACS_Connection(this.AccessCennection);
            ACS.OleDbCommand acs_command = new System.Data.OleDb.OleDbCommand();
            acs_connection.Open();
            ACS.OleDbTransaction trans = acs_connection.BeginTransaction();
            acs_command.Connection = acs_connection;
            acs_command.Transaction = trans;
            try
            {
                for (int i = 0; i                 {
                    acs_command.CommandText = SqlStrings[i].ToString();
                    Rows += acs_command.ExecuteNonQuery();
                }
                trans.Commit();
            }
            catch
            {
                success = false;
                trans.Rollback();
            }
            finally
            {
                acs_connection.Close();
            }
            if (Rows == 0)
                success = false;
            return success;
        }
        public Boolean ExecuteSQL(String SqlString)
        {
            List SqlStrings = new List();
            SqlStrings.Add(SqlString);
            return ExecuteSQL(SqlStrings);
        }
        #endregion
        #region 在一个数据表中插入一条记录
        ///
        /// 在一个数据表中插入一条记录
        ///

        /// 表名
        /// 哈希表,键值(Key)为字段名,值(value)为字段值
        /// 是否成功
        public bool Insert(String TableName, Hashtable Cols)
        {
            int Count = 0;//用于SQL语句创建
            int Rows = 0;//记录受影响的行数
            if (Cols.Count             {
                return true;
            }
            String Fields = "(";
            String Values = " Values('";
            foreach (DictionaryEntry item in Cols)
            {
                if (Count != 0)
                {
                    Fields += ",";
                    Values += "','";
                }
                Fields += item.Key.ToString();
                Values += item.Value.ToString();
                Count++;
            }
            Fields += ")";
            Values += "')";
            String SqlString = "insert into " + TableName + Fields + Values;
            return ExecuteSQL(SqlString);
        }
        #endregion
        #region 更新一个数据表的一条记录
        ///
        /// 更新一个数据表的一条记录
        ///

        /// 表名
        /// 哈希表,键值为字段名,值为字段值
        /// Where字句
        ///
        public Boolean Update(String TableName, Hashtable Cols, String Where)
        {
            int Count = 0;
            if (Cols.Count             {
                return true;
            }
            String Fields = " ";
            foreach (DictionaryEntry item in Cols)
            {
                if (Count != 0)
                {
                    Fields += ",";
                }
                Fields += item.Key.ToString();
                Fields += "=";
                Fields += item.Value.ToString();
            }
            Fields += " ";
            String SqlString = "update " + TableName + " set " + Fields + Where;
            return ExecuteSQL(SqlString);
        }
        #endregion
        #region 获取数据返回一个Dataset
        ///
        /// 获取数据返回一个Dataset
        ///

        /// Sql语句
        /// DataSet
        public DataSet GetDataSet(String SqlString)
        {
            ACS.OleDbConnection acs_connection = null;
            ACS.OleDbCommand acs_command;
            ACS.OleDbDataAdapter acs_adapter;
            DataSet ds = new DataSet();
            try
            {
                acs_connection = CreateACS_Connection(this.AccessCennection);
                acs_command = CreateACS_Command(SqlString, acs_connection);
                acs_adapter = CreateACS_Adapter(acs_command);
                acs_connection.Open();
                acs_adapter.Fill(ds);
            }
            catch (Exception acse)
            {
            }
            finally
            {
                acs_connection.Close();
            }
            if (ds.Tables.Count == 0)
            {
                return null;
            }
            return ds;
        }
        #endregion
        #region 根据用户所给的条件返回用户需要的数据
        ///
        /// 根据用户所给的条件返回用户需要的数据
        ///

        /// 表名
        /// 参数类型
        /// 参数值
        /// DataSet
        public DataSet Select(String TableName, List ParameterTypes, List ParameterValues)
        {
            StringBuilder sbSql = new StringBuilder("SELECT * FROM ");
            sbSql.Append(TableName);
            if (ParameterTypes[0] != null && ParameterValues[0] != null)
            {
                sbSql.Append(" WHERE ").Append(ParameterTypes[0]).Append(" ='").Append(ParameterValues[0]).Append("'");
                //如果还有参数就继续加
                for (int i = 1; i                 {
                    sbSql.Append(" and ").Append(ParameterTypes[i]).Append(" ='").Append(ParameterValues[i]).Append("'");
                }
            }
            String SqlString = sbSql.ToString();
            return GetDataSet(SqlString);
        }
        ///
        /// 根据用户所给的条件返回用户需要的数据(单参数)
        ///

        /// 表名
        /// 参数类型
        /// 参数值
        /// DataSet
        public DataSet Select(String TableName, String ParameterType, String ParameterValue)
        {
            List ParameterTypes = new List();
            List ParameterValues = new List();
            ParameterTypes.Add(ParameterType);
            ParameterValues.Add(ParameterValue);
            return Select(TableName, ParameterTypes, ParameterValues);
        }
        #endregion
        #region 获取数据,返回一个DataRow
        ///
        /// 获取数据,返回一个DataRow
        ///

        /// Sql语句
        /// DataRow
        public DataRow GetDataRow(String SqlString)
        {
            DataSet ds = GetDataSet(SqlString);
            ds.CaseSensitive = false;
            if (ds.Tables[0].Rows.Count > 0)
            {
                return ds.Tables[0].Rows[0];
            }
            else
            {
                return null;
            }
        }
        ///
        /// 根据条件返回用户需要的数据
        ///

        /// 表名
        /// 参数类型
        /// 参数值
        /// DataRow
        public DataRow Select_DataRow(String TableName, List ParameterTypes, List ParameterValues)
        {
            DataSet ds = Select(TableName, ParameterTypes, ParameterValues);
            ds.CaseSensitive = false;
            if (ds.Tables.Count > 0)
            {
                if (ds.Tables[0].Rows.Count > 0)
                {
                    return ds.Tables[0].Rows[0];
                }
                else
                {
                    return null;
                }
            }
            else
            {
                return null;
            }
        }

        ///


        /// 根据用户给定的条件返回数据(单参数)
        ///

        /// 表名
        /// 参数类型
        /// 参数值
        /// DataRow
        public DataRow Select_DataRow(String TableName, String ParameterType, String ParameterValue)
        {
            List ParameterTypes = new List();
            List ParameterValues = new List();
            ParameterTypes.Add(ParameterType);
            ParameterValues.Add(ParameterValue);
            return Select_DataRow(TableName, ParameterTypes, ParameterValues);
        }
        #endregion
        #region 从一个DataRow中,安全得到colname中的值,值为字符串类型
        ///
        /// 从一个DataRow中,安全得到colname中的值,值为字符串类型
        ///

        /// 数据行对象
        /// 列名
        /// 如果值存在,返回;否则,返回System.String.Empty
        public static String ValidateDataRow_S(DataRow row, String colname)
        {
            if (row[colname] != DBNull.Value)
                return row[colname].ToString();
            else
                return System.String.Empty;
        }
        #endregion
    }
}

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to configure zend for apache How to configure zend for apache Apr 13, 2025 pm 12:57 PM

How to configure Zend in Apache? The steps to configure Zend Framework in an Apache Web Server are as follows: Install Zend Framework and extract it into the Web Server directory. Create a .htaccess file. Create the Zend application directory and add the index.php file. Configure the Zend application (application.ini). Restart the Apache Web server.

Oracle's Role in the Business World Oracle's Role in the Business World Apr 23, 2025 am 12:01 AM

Oracle is not only a database company, but also a leader in cloud computing and ERP systems. 1. Oracle provides comprehensive solutions from database to cloud services and ERP systems. 2. OracleCloud challenges AWS and Azure, providing IaaS, PaaS and SaaS services. 3. Oracle's ERP systems such as E-BusinessSuite and FusionApplications help enterprises optimize operations.

What is apache server? What is apache server for? What is apache server? What is apache server for? Apr 13, 2025 am 11:57 AM

Apache server is a powerful web server software that acts as a bridge between browsers and website servers. 1. It handles HTTP requests and returns web page content based on requests; 2. Modular design allows extended functions, such as support for SSL encryption and dynamic web pages; 3. Configuration files (such as virtual host configurations) need to be carefully set to avoid security vulnerabilities, and optimize performance parameters, such as thread count and timeout time, in order to build high-performance and secure web applications.

How to use Debian Apache logs to improve website performance How to use Debian Apache logs to improve website performance Apr 12, 2025 pm 11:36 PM

This article will explain how to improve website performance by analyzing Apache logs under the Debian system. 1. Log Analysis Basics Apache log records the detailed information of all HTTP requests, including IP address, timestamp, request URL, HTTP method and response code. In Debian systems, these logs are usually located in the /var/log/apache2/access.log and /var/log/apache2/error.log directories. Understanding the log structure is the first step in effective analysis. 2. Log analysis tool You can use a variety of tools to analyze Apache logs: Command line tools: grep, awk, sed and other command line tools.

Nginx performance monitoring and troubleshooting tools Nginx performance monitoring and troubleshooting tools Apr 13, 2025 pm 10:00 PM

Nginx performance monitoring and troubleshooting are mainly carried out through the following steps: 1. Use nginx-V to view version information, and enable the stub_status module to monitor the number of active connections, requests and cache hit rate; 2. Use top command to monitor system resource occupation, iostat and vmstat monitor disk I/O and memory usage respectively; 3. Use tcpdump to capture packets to analyze network traffic and troubleshoot network connection problems; 4. Properly configure the number of worker processes to avoid insufficient concurrent processing capabilities or excessive process context switching overhead; 5. Correctly configure Nginx cache to avoid improper cache size settings; 6. By analyzing Nginx logs, such as using awk and grep commands or ELK

MySQL vs. Other Databases: Comparing the Options MySQL vs. Other Databases: Comparing the Options Apr 15, 2025 am 12:08 AM

MySQL is suitable for web applications and content management systems and is popular for its open source, high performance and ease of use. 1) Compared with PostgreSQL, MySQL performs better in simple queries and high concurrent read operations. 2) Compared with Oracle, MySQL is more popular among small and medium-sized enterprises because of its open source and low cost. 3) Compared with Microsoft SQL Server, MySQL is more suitable for cross-platform applications. 4) Unlike MongoDB, MySQL is more suitable for structured data and transaction processing.

Using Dicr/Yii2-Google to integrate Google API in YII2 Using Dicr/Yii2-Google to integrate Google API in YII2 Apr 18, 2025 am 11:54 AM

VprocesserazrabotkiveB-enclosed, Мнепришлостольностьсясзадачейтерациигооглапидляпапакробоглесхетсigootrive. LEAVALLYSUMBALLANCEFRIABLANCEFAUMDOPTOMATIFICATION, ČtookazaLovnetakProsto, Kakaožidal.Posenesko

MySQL: Structured Data and Relational Databases MySQL: Structured Data and Relational Databases Apr 18, 2025 am 12:22 AM

MySQL efficiently manages structured data through table structure and SQL query, and implements inter-table relationships through foreign keys. 1. Define the data format and type when creating a table. 2. Use foreign keys to establish relationships between tables. 3. Improve performance through indexing and query optimization. 4. Regularly backup and monitor databases to ensure data security and performance optimization.

See all articles