您的位置:首页 > 数据库

C# Access数据库操作

2012-05-09 00:58 281 查看
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;
}
}

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息