C# asp.net 操作ACCESS 数据库 类库

原创 2015年11月18日 15:11:58


直接上代码:如有疑问加QQ五群互动共享(480888314):(更多干货大家共享)

public string _connectString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Application.StartupPath + @"\DBAccess\DB.accdb;"

                                    + "Jet OLEDB:Database Password=" ";Persist Security Info=False";
        //获取dataset
        public DataSet GetAccessDataSet(string OleDb)
        {
            DataSet ds = new DataSet();
            using (OleDbConnection conn = new OleDbConnection(_connectString))
            {
                try
                {
                    if (conn.State != ConnectionState.Open)
                    {
                        conn.Open();
                    }
                    OleDbDataAdapter OleDbda = new OleDbDataAdapter(OleDb, conn);
                    OleDbda.Fill(ds);
                }
                catch (Exception ex)
                {
                    ExecptionRecord.WriteExecptionToFile(ex.ToString(),OleDb);
                }
            }
            return ds;
        }


        //获取DataTable
        public DataTable GetAccessDataTable(string OleDb)
        {
            DataTable da = new DataTable();
            using (OleDbConnection conn = new OleDbConnection(_connectString))
            {
                try
                {
                    if (conn.State != ConnectionState.Open)
                    {
                        conn.Open();
                    }
                    OleDbDataAdapter OleDbda = new OleDbDataAdapter(OleDb, conn);
                    OleDbda.Fill(da);
                }
                catch (Exception ex)
                {
                    ExecptionRecord.WriteExecptionToFile(ex.ToString() + Environment.NewLine , OleDb);
                }
            }
            return da;
        }
        /// <returns></returns>
        public byte[] AccGetbyte(string OleDb)
        {
            byte[] filebyte = null;
            using (OleDbConnection conn = new OleDbConnection(_connectString))
            {
                conn.Open();
                OleDbCommand com = new OleDbCommand();
                OleDbDataReader dr = null;
                com.Connection = conn;
                com.CommandType = CommandType.Text;
                com.CommandText = OleDb;
                dr = com.ExecuteReader();
                while (dr.Read())
                {
                    filebyte = Encoding.Default.GetBytes(dr[0].ToString());
                    //filebyte = (byte[])dr[0];
                }
                dr.Close();
            }
            filebyte = Zip.Compress(filebyte);
            return filebyte;
        }
        //执行单条OleDb语句
        public bool AccExecSqlCommand(string OleDb)
        {
            OleDbConnection conn = new OleDbConnection(_connectString);
            OleDbTransaction tran = null;
            try
            {
                conn.Open();
                tran = conn.BeginTransaction();
                OleDbCommand cmd = new OleDbCommand(OleDb, conn, tran);
                cmd.ExecuteNonQuery();
                tran.Commit();
                conn.Close();
                return true;
            }
            catch (Exception ee)
            {
                if (tran != null)
                {
                    tran.Rollback();
                }
                if (conn.State != ConnectionState.Closed)
                {
                    conn.Close();
                }
                ExecptionRecord.WriteExecptionToFile(ee.Message + Environment.NewLine , OleDb);
                return false;
            }
        }
        //执行事务


        public bool AccExecTansCommand(ArrayList OleDbarraylist)
        {
            using (OleDbConnection conn = new OleDbConnection(_connectString))
            {
                conn.Open();
                OleDbCommand OleDbcom = new OleDbCommand();
                OleDbcom.Connection = conn;
                OleDbTransaction OleDbtrans = conn.BeginTransaction();
                OleDbcom.Transaction = OleDbtrans;
                try
                {
                    for (int i = 0; i < OleDbarraylist.Count; i++)
                    {
                        string strOleDb = OleDbarraylist[i].ToString();
                        if (strOleDb.Trim().Length > 0)
                        {
                            OleDbcom.CommandText = strOleDb;
                            OleDbcom.ExecuteNonQuery();
                        }
                    }
                    OleDbtrans.Commit();
                }
                catch (OleDbException ex)
                {
                    OleDbtrans.Rollback();
                    ExecptionRecord.WriteExecptionToFile(ex.ToString(),"");
                    return false;
                }
            }
            return true;
        }
        //备份数据    
        public bool DbBackup(string strDest)
        {
            string str = Application.StartupPath;
            string Str2 = str + @"\DBAccess\DB.accdb";
            if (!File.Exists(Str2))
            {
                return false;
            }
            else
            {
                File.Copy(Str2, strDest, true);
                return true;
            }
        }
        // 还原数据
        public bool DbRecover(string strDest)
        {
            string str = Application.StartupPath;
            string strDestTo = str + @"\DBAccess\DB.accdb";


            if (!File.Exists(strDest))
            {
                return false;
            }
            else
            {
                File.Copy(strDest, strDestTo, true);
                return true;
            }
        }

VB.NET 使用 OleDb 操作 Access 数据库(来自 MSDN)

VB.NET 使用 OleDb 操作 Access 数据库 这里采用 OleDb 方式对 Access 数据库进行访问,主要内容都来自 MSDN 帮助文档。建议新手注意 MSDN 的用途。 首先导入命...
  • Linmson
  • Linmson
  • 2014年04月03日 13:52
  • 5349

C#(VB.net)数据库访问操作类库

  • 2009年11月06日 16:50
  • 1.48MB
  • 下载

C# Access 数据库 操作

using System; using System.IO; using System.Collections.Generic; using System.Linq; using System...

C# ACCESS 数据库操作类

  • 2011年09月13日 15:50
  • 2KB
  • 下载

ASP.NET C# 访问Access、Xml等数据库

简介 目前主流的数据库是SQL2008 、SQL2012了等等,从一开始我们接触的也是这些RDMS数据库管理系统,似乎认为Access、SQL2000等已经没有什么用处,其实,它们用处也非常大...

ASP.NET C#各种数据库连接字符串大全——SQLServer、Oracle、Access

刚开始学习C#开发项目时,长期会为了写一个安全的高效的数据库连接发愁。我发现现在很多刚开始学习的朋友和有些做了一两年的朋友,也有点犯愁,我就贴上这个代码,给自己以后做个参考,也给朋友做个学习的参考。 ...
  • dyzhen
  • dyzhen
  • 2016年07月14日 22:44
  • 1117

ASP.NET + C#读取ACCESS数据库内容的简单方法

string strDSN = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("Database/TeamPro...

ASP.Net操作Access数据库总结

1、数据库的连接 引入命名空间 using System.Data; using System.Data.OleDb; 连接代码:    string strConnection = "Provide...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C# asp.net 操作ACCESS 数据库 类库
举报原因:
原因补充:

(最多只允许输入30个字)