C# Access数据库操作

大家讲道理
大家讲道理 原创
2016-11-10 09:14:02 2265浏览
using System;  
using System.Collections.Generic;  
using System.Linq;  
using System.Text;  
using System.Data;  
using System.Data.OleDb;  
   
   
namespace AccessPractice  
{  
    public static class AccessHelper  
    {  
        public static bool Execute(string path,string sql)   
        {  
            try 
            {  
                string strConn = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + ";";  
                OleDbConnection odcConnection = new OleDbConnection(strConn);  
                //2、打开连接  
                odcConnection.Open();  
                //建立SQL查询  
                OleDbCommand odCommand = odcConnection.CreateCommand();  
                //3、输入查询语句  
                odCommand.CommandText = sql;  
   
   
                odCommand.ExecuteNonQuery();  
                odcConnection.Close();  
                return true;  
            }  
            catch(Exception ex)  
            {  
                return false;  
            }  
   
   
        }  
   
   
        public static DataTable ReadAllData(string tableName, string mdbPath,int topN, ref bool success)  
        {  
            DataTable dt = new DataTable();  
            try 
            {  
                //1、建立连接  
                string strConn = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + mdbPath + ";";  
                OleDbConnection odcConnection = new OleDbConnection(strConn);  
                //2、打开连接  
                odcConnection.Open();  
                //建立SQL查询  
                OleDbCommand odCommand = odcConnection.CreateCommand();  
                //3、输入查询语句  
                odCommand.CommandText = "select * from " + tableName;  
                //建立读取  
                OleDbDataReader odrReader = odCommand.ExecuteReader();  
                //查询并显示数据  
                int size = odrReader.FieldCount;  
                for (int i = 0; i < size; i++)  
                {  
                    DataColumn dc;  
                    dc = new DataColumn(odrReader.GetName(i));  
                    dt.Columns.Add(dc);  
                }  
                DataRow dr;  
                int count = 0;  
                while (odrReader.Read())  
                {  
                    if (++count == topN)   
                    {  
                        break;  
                    }  
                    dr = dt.NewRow();  
                    for (int i = 0; i < size; i++)  
                    {  
                        dr[odrReader.GetName(i)] = odrReader[odrReader.GetName(i)].ToString();  
                    }  
                    dt.Rows.Add(dr);  
                }  
                //关闭连接  
                odrReader.Close();  
                odcConnection.Close();  
                success = true;  
                return dt;  
            }  
            catch 
            {  
                success = false;  
                return dt;  
            }  
        }  
   
   
    }  
}
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。