http://www.8mood.cn/default.asp?CateID=3&page=3
NET access连接数据库封装
using System;
using System.Text;
using System.Data.Odbc;
using System.Collections;
/// <summary>
/// Class1 的摘要说明
/// </summary>
///
namespace MyDB
{
public static class DB
{
static OdbcConnection con = null;
public static OdbcConnection odbcCon
{
get {
if (con != null) { return con; }
else { return null; }
}
}
public static string DataBase
{
set
{
if (con == null) con = new OdbcConnection();
if (con.State != System.Data.ConnectionState.Closed) con.Close();
StringBuilder sb = new StringBuilder();
sb.Append("DBQ=");
sb.Append(value);
sb.Append(";Driver={Microsoft Access Driver (*.mdb)}");
con = new OdbcConnection(sb.ToString());
}
}
public static void Open()
{
if (con==null) con = new OdbcConnection();
if (con.State != System.Data.ConnectionState.Closed )
{
con.Close();
}
con.Open();
}
public static void Close()
{
con.Close();
con.Dispose();
con = null;
}
public static string TransAction(params string[] sql)
{
OdbcCommand cmd = new OdbcCommand();
cmd.Connection = DB.odbcCon;
if (sql.Length > 1)
{
cmd.Transaction = DB.odbcCon.BeginTransaction();
for (int i = 0; i < sql.Length; i++)
{
//try
//{
cmd.CommandText = sql[i];
cmd.ExecuteNonQuery();
//}
/*catch (Exception e)
{
cmd.Transaction.Rollback();
return e.ToString();
}*/
}
cmd.Transaction.Commit();
}
else //单表操作不需要事务
{
try
{
cmd.CommandText = sql[0];
cmd.ExecuteNonQuery();
}
catch (Exception e)
{
return e.ToString();
}
}
cmd.Dispose();
cmd = null;
return "Commit";
}
public static bool isCreditEnough(int Credit,int CreditLimit,string userName)
{
OdbcCommand cmd = new OdbcCommand();
cmd.Connection = DB.con;
cmd.CommandText = "select credit from user where id='" + userName + "'";
if (CreditLimit > (int)cmd.ExecuteScalar()) return false;
cmd.CommandText = "select creditlimit from user where id='" + userName + "'";
if (Credit > (int)cmd.ExecuteScalar()) return false;
return true;
}
}
public static class sqlString
{
public static string CreateSql(ArrayList values)
{
StringBuilder sb = new StringBuilder();
sb.Append(values[0]);
for (int i = 1; i < values.Count; i++)
{
sb.Append(",");
sb.Append(values[i]);
}
return sb.ToString();
}
}
}