我常用的C# 操作ACCESS数据库类(winform)

发布时间:2009年06月18日      浏览次数:1363 次
using System;
using System.Configuration;
using System.Collections;
using System.Data;
using System.Data.OleDb;
namespace MyData
{
public static class Class_oledb_conn
{
//public static string ConnStr = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=DataBase/*.mdb;";
public static string ConnStr = MyData.Properties.Settings.Default.my_soft_oledbConn;
//打开数据库链接
public static OleDbConnection Open_Conn(string ConnStr)
{
OleDbConnection Conn = new OleDbConnection(ConnStr);
Conn.Open();
return Conn;
}
//关闭数据库链接
public static void Close_Conn(OleDbConnection Conn)
{
if (Conn != null)
{
Conn.Close();
Conn.Dispose();
}
GC.Collect();
}
//运行OleDb语句
public static int Run_SQL(string SQL, string ConnStr)
{
OleDbConnection Conn = Open_Conn(ConnStr);
OleDbCommand Cmd = Create_Cmd(SQL, Conn);
try
{
int result_count = Cmd.ExecuteNonQuery();
Close_Conn(Conn);
return result_count;
}
catch
{
Close_Conn(Conn);
return 0;
}
}
// 生成Command对象
public static OleDbCommand Create_Cmd(string SQL, OleDbConnection Conn)
{
OleDbCommand Cmd = new OleDbCommand(SQL, Conn);
return Cmd;
}
// 运行OleDb语句返回 DataTable
public static DataTable Get_DataTable(string SQL, string ConnStr, string Table_name)
{
OleDbDataAdapter Da = Get_Adapter(SQL, ConnStr);
DataTable dt = new DataTable(Table_name);
Da.Fill(dt);
return dt;
}
// 运行OleDb语句返回 OleDbDataReader对象
public static OleDbDataReader Get_Reader(string SQL, string ConnStr)
{
OleDbConnection Conn = Open_Conn(ConnStr);
OleDbCommand Cmd = Create_Cmd(SQL, Conn);
OleDbDataReader Dr;
try
{
Dr = Cmd.ExecuteReader(CommandBehavior.Default);
}
catch
{
throw new Exception(SQL);
}
Close_Conn(Conn);
return Dr;
}
// 运行OleDb语句返回 OleDbDataAdapter对象
public static OleDbDataAdapter Get_Adapter(string SQL, string ConnStr)
{
OleDbConnection Conn = Open_Conn(ConnStr);
OleDbDataAdapter Da = new OleDbDataAdapter(SQL, Conn);
return Da;
}
// 运行OleDb语句,返回DataSet对象
public static DataSet Get_DataSet(string SQL, string ConnStr, DataSet Ds)
{
OleDbDataAdapter Da = Get_Adapter(SQL, ConnStr);
try
{
Da.Fill(Ds);
}
catch (Exception Err)
{
throw Err;
}
return Ds;
}
// 运行OleDb语句,返回DataSet对象
public static DataSet Get_DataSet(string SQL, string ConnStr, DataSet Ds, string tablename)
{
OleDbDataAdapter Da = Get_Adapter(SQL, ConnStr);
try
{
Da.Fill(Ds, tablename);
}
catch (Exception Ex)
{
throw Ex;
}
return Ds;
}
// 运行OleDb语句,返回DataSet对象,将数据进行了分页
public static DataSet Get_DataSet(string SQL, string ConnStr, DataSet Ds, int StartIndex, int PageSize, string tablename)
{
OleDbConnection Conn = Open_Conn(ConnStr);
OleDbDataAdapter Da = Get_Adapter(SQL, ConnStr);
try
{
Da.Fill(Ds, StartIndex, PageSize, tablename);
}
catch (Exception Ex)
{
throw Ex;
}
Close_Conn(Conn);
return Ds;
}
// 返回OleDb语句执行结果的第一行第一列
public static string Get_Row1_Col1_Value(string SQL, string ConnStr)
{
OleDbConnection Conn = Open_Conn(ConnStr);
string result;
OleDbDataReader Dr;
try
{
Dr = Create_Cmd(SQL, Conn).ExecuteReader();
if (Dr.Read())
{
result = Dr[0].ToString();
Dr.Close();
}
else
{
result = "";
Dr.Close();
}
}
catch
{
throw new Exception(SQL);
}
Close_Conn(Conn);
return result;
}
}
}
------------------------------------------------------------------
app.config 里的数据库链接字符串
------------------------------------------------------------------
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
</configSections>
<connectionStrings>
<add name="MyData.Properties.Settings.my_soft_oledbConn" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=数据库路径\*.mdb"
providerName="System.Data.OleDb" />
</connectionStrings>
</configuration>
文章来源:桂林唯创网络
免责声明:本站相关技术文章信息部分来自网络,目的主要是传播更多信息,如果您认为本站的某些信息侵犯了您的版权,请与我们联系,我们会即时妥善的处理,谢谢合作!