首页 数据库 mysql教程 连接Access数据库的DAL层操作代码

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

Jun 07, 2016 pm 03:44 PM
access using 代码 操作 数据库 连接

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
    }
}

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1657
14
CakePHP 教程
1415
52
Laravel 教程
1309
25
PHP教程
1257
29
C# 教程
1230
24
apache怎么配置zend apache怎么配置zend Apr 13, 2025 pm 12:57 PM

如何在 Apache 中配置 Zend?在 Apache Web 服务器中配置 Zend Framework 的步骤如下:安装 Zend Framework 并解压到 Web 服务器目录中。创建 .htaccess 文件。创建 Zend 应用程序目录并添加 index.php 文件。配置 Zend 应用程序(application.ini)。重新启动 Apache Web 服务器。

甲骨文在商业世界中的作用 甲骨文在商业世界中的作用 Apr 23, 2025 am 12:01 AM

Oracle不仅是数据库公司,还是云计算和ERP系统的领导者。1.Oracle提供从数据库到云服务和ERP系统的全面解决方案。2.OracleCloud挑战AWS和Azure,提供IaaS、PaaS和SaaS服务。3.Oracle的ERP系统如E-BusinessSuite和FusionApplications帮助企业优化运营。

MySQL与其他数据库:比较选项 MySQL与其他数据库:比较选项 Apr 15, 2025 am 12:08 AM

MySQL适合Web应用和内容管理系统,因其开源、高性能和易用性而受欢迎。1)与PostgreSQL相比,MySQL在简单查询和高并发读操作上表现更好。2)相较Oracle,MySQL因开源和低成本更受中小企业青睐。3)对比MicrosoftSQLServer,MySQL更适合跨平台应用。4)与MongoDB不同,MySQL更适用于结构化数据和事务处理。

MySQL:结构化数据和关系数据库 MySQL:结构化数据和关系数据库 Apr 18, 2025 am 12:22 AM

MySQL通过表结构和SQL查询高效管理结构化数据,并通过外键实现表间关系。1.创建表时定义数据格式和类型。2.使用外键建立表间关系。3.通过索引和查询优化提高性能。4.定期备份和监控数据库确保数据安全和性能优化。

使用DICR/YII2-Google将Google API集成在YII2中 使用DICR/YII2-Google将Google API集成在YII2中 Apr 18, 2025 am 11:54 AM

vProcesserazrabotkiveb被固定,мнелостольностьстьс粹馏标д都LeavallySumballanceFriablanceFaumDoptoMatification,Čtookazalovnetakprosto,kakaožidal.posenesko

apache服务器是什么 apache服务器是干嘛的 apache服务器是什么 apache服务器是干嘛的 Apr 13, 2025 am 11:57 AM

Apache服务器是强大的Web服务器软件,充当浏览器与网站服务器间的桥梁。1. 它处理HTTP请求,根据请求返回网页内容;2. 模块化设计允许扩展功能,例如支持SSL加密和动态网页;3. 配置文件(如虚拟主机配置)需谨慎设置,避免安全漏洞,并需优化性能参数,例如线程数和超时时间,才能构建高性能、安全的Web应用。

Debian Apache日志中如何识别恶意访问 Debian Apache日志中如何识别恶意访问 Apr 13, 2025 am 07:30 AM

有效监控和防御恶意网站访问对于Debian系统的Apache服务器至关重要。Apache访问日志是识别此类威胁的关键信息来源。本文将指导您如何分析日志并采取防御措施。识别恶意访问行为Debian系统的Apache访问日志通常位于/var/log/apache2/access.log。您可以通过多种方法分析日志:日志文件位置确认:首先,请确认您的Apache访问日志的准确位置,它可能因系统配置而略有不同。命令行工具分析:使用grep命令搜索特定模式,例如grep"404"

Nginx性能监控与故障排查工具使用 Nginx性能监控与故障排查工具使用 Apr 13, 2025 pm 10:00 PM

Nginx性能监控与故障排查主要通过以下步骤进行:1.使用nginx-V查看版本信息,并启用stub_status模块监控活跃连接数、请求数和缓存命中率;2.利用top命令监控系统资源占用,iostat和vmstat分别监控磁盘I/O和内存使用情况;3.使用tcpdump抓包分析网络流量,排查网络连接问题;4.合理配置worker进程数,避免并发处理能力不足或进程上下文切换开销过大;5.正确配置Nginx缓存,避免缓存大小设置不当;6.通过分析Nginx日志,例如使用awk和grep命令或ELK

See all articles