ShoppingPlatForm-----的数据库层

一:Web.config配置页面

<?xml version="1.0" encoding="utf-8"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">

  <appSettings>
    <add key="XmlPath" value="XmlCount.xml"></add>
  </appSettings>
    <connectionStrings>
        <add name="shopConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=G:\work\database\shop.mdb"
            providerName="System.Data.OleDb" />
            <system.web>

二:OleBase.cs 类
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;
/// <summary>
/// OleBase 的摘要说明
/// </summary>
public class OleBase
{
    protected static string m_StrConnection = ConfigurationManager.ConnectionStrings["shopConnectionString"].ToString();

 public OleBase()
 {
  
 }

    /// <summary>
    /// 执行不返回数据集的SQL语句
    /// </summary>
    /// <param name="p_StrSql"></param>
    /// <returns></returns>
    public static int ExecuteSql(string p_StrSql)
    {
        OleDbConnection MyConnection = new OleDbConnection(m_StrConnection);
        OleDbCommand MyCmd = new OleDbCommand(p_StrSql, MyConnection);

        try
        {
            MyConnection.Open();
            MyCmd.ExecuteNonQuery();

            return 0;

        }
        catch (OleDbException e)
        {
            throw new Exception(e.Message);
        }
        finally
        {
            MyCmd.Dispose();
            MyConnection.Close();
        }
    }//end ExecuteSql

    /// <summary>
    /// 执行SQL语句,判读是否返回数据:不返回数据则抛出"Valule Unavailable!"异常
    /// </summary>
    /// <param name="p_StrSql"></param>
    /// <returns></returns>
    public static int ExecuteSqlEx(string p_StrSql)
    {
        OleDbConnection MyConnection = new OleDbConnection(m_StrConnection);
        OleDbCommand MyCmd = new OleDbCommand(p_StrSql, MyConnection);

        try
        {
            MyConnection.Open();
            OleDbDataReader MyReader = MyCmd.ExecuteReader();
            if (MyReader.Read())
            {
                return 0;
            }
            else
            {
                throw new Exception("Valule Unavailable!"); 
            }

        }
        catch (OleDbException e)
        {
            throw new Exception(e.Message);
        }
        finally
        {
            MyCmd.Dispose();
            MyConnection.Close();
        }
    }//end ExecuteSqlEx

    /// <summary>
    /// 执行SQL语句,并返回数据集
    /// </summary>
    /// <param name="p_StrSql"></param>
    /// <returns></returns>
    public static DataSet  ExecuteSql4Ds(string p_StrSql)
    {
        OleDbConnection MyConnection = new OleDbConnection(m_StrConnection);
        OleDbCommand MyCmd = new OleDbCommand(p_StrSql, MyConnection);

        try
        {
            MyConnection.Open();
            OleDbDataAdapter Sda = new OleDbDataAdapter(p_StrSql, MyConnection);
            DataSet Ds = new DataSet("ds");
            Sda.Fill(Ds);            
            return Ds;
        }
        catch (OleDbException e)
        {
            throw new Exception(e.Message);
        }
        finally
        {
            MyConnection.Close();
        }
    }//end ExecuteSql4Ds

    /// <summary>
    /// 执行仅返回一个数字值结果的SQL语句
    /// </summary>
    /// <param name="p_StrSql"></param>
    /// <returns></returns>
    public static int ExecuteSql4Value(string p_StrSql)
    {
        OleDbConnection MyConnection = new OleDbConnection(m_StrConnection);
        OleDbCommand MyCmd = new OleDbCommand(p_StrSql, MyConnection);

        try
        {
            MyConnection.Open();
            object r = MyCmd.ExecuteScalar();
            if (object.Equals(r, null))
            {
                throw new Exception("Value Unavailable!");
            }
            else
            {
                return (int)r;
            }

        }
        catch (OleDbException e)
        {
            throw new Exception(e.Message);
        }
        finally
        {
            MyCmd.Dispose();
            MyConnection.Close();
        }
    }//end ExecuteSql4Value

    /// <summary>
    /// 执行仅返回一个数据的SQL语句,返回数据可以为任何类型
    /// </summary>
    /// <param name="p_StrSql"></param>
    /// <returns></returns>
    public static object ExecuteSql4ValueEx(string p_StrSql)
    {
        OleDbConnection MyConnection = new OleDbConnection(m_StrConnection);
        OleDbCommand MyCmd = new OleDbCommand(p_StrSql, MyConnection);

        try
        {
            MyConnection.Open();
            object r = MyCmd.ExecuteScalar();
            if (object.Equals(r, null))
            {
                throw new Exception("Value Unavailable!");
            }
            else
            {
                return r;
            }

        }
        catch (OleDbException e)
        {
            throw new Exception(e.Message);
        }
        finally
        {
            MyCmd.Dispose();
            MyConnection.Close();
        }
    }//end ExecuteSql4ValueEx

    /// <summary>
    /// 执行一组不返回数据集的SQL语句
    /// </summary>
    /// <param name="p_StrSql"></param>
    /// <returns></returns>
    public static int ExecuteSql(string[] p_StrSql)
    {
        OleDbConnection MyConnection = new OleDbConnection(m_StrConnection);
        OleDbCommand MyCmd = new OleDbCommand();
        int j = p_StrSql.Length;

        try
        {
            MyConnection.Open();

        }
        catch (OleDbException e)
        {
            throw new Exception(e.Message);
        }
        OleDbTransaction MyTrans = MyConnection.BeginTransaction();
       
      try
        {
            MyCmd.Connection = MyConnection;
            MyCmd.Transaction = MyTrans;
            foreach (string Str in p_StrSql)
            {
                MyCmd.CommandText = Str;
                MyCmd.ExecuteNonQuery();
            }
           MyTrans.Commit();
           
           return 0;
        }
        catch (OleDbException e)
        {
            MyTrans.Rollback();
            throw new Exception(e.Message);
        }
       
        finally
        {
            MyCmd.Dispose();
            MyConnection.Close();
        }
    }//end ExecuteSql

}

三:shujuku.cs类

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;

/// <summary>
/// ShuJuKu 的摘要说明
/// </summary>
public class ShuJuKu
{
    private OleDbConnection m_MyConnection = null;

 public ShuJuKu()
 {
  
 }

    private void Open()
    {
        //打开数据库连接
        if (m_MyConnection == null)
        {
            m_MyConnection = new OleDbConnection(ConfigurationSettings.AppSettings["shopConnectionString"]);

        }
        if (m_MyConnection.State == ConnectionState.Closed)
        {
            m_MyConnection.Open();
        
         }
    }//end Open

    private void Close()
    {
        if (m_MyConnection != null)
        {
            if (m_MyConnection.State == ConnectionState.Open)
            {
                m_MyConnection.Close();
            }
        }
    }//end Close

    private void Disponse()
    {
        if (m_MyConnection != null)
        {
            m_MyConnection.Dispose();
            m_MyConnection = null;
        }
    }
}


转载于:https://www.cnblogs.com/burandanxin/archive/2008/07/09/1239102.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值