using System.Data.OleDb;
using System.Collections;using System.Data.SqlClient;
using System.Data.Sql;/// <summary>
/// Summary description for OleDbHelper
/// </summary>
public class OleDbHelper
{
    public static string strConnection
    {
        get
        {
            if(!Common.IsEnglish)
            {
           return  "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + HttpContext.Current.Server.MapPath(Common.ChinesedbPath);            }
            else
             return "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + HttpContext.Current.Server.MapPath(Common.EnglishdbPath);
        }
    }    private static Hashtable parmCache = Hashtable.Synchronized(new Hashtable());    #region ExecuteNonQuery    public static int ExecuteNonQuery(string connectionString, CommandType cmdType, string cmdText, params OleDbParameter[] commandParameters)
    {        OleDbCommand cmd = new OleDbCommand();        using (OleDbConnection conn = new OleDbConnection(connectionString))
        {
            PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
            int val;
            try
            {
                val = cmd.ExecuteNonQuery();
            }
            finally
            {
                cmd.Parameters.Clear();
                conn.Close();
            }
            return val;
        }
    }
    public static int ExecuteNonQuery(CommandType cmdType, string cmdText, params OleDbParameter[] commandParameters)
    {
        OleDbCommand cmd = new OleDbCommand();        using (OleDbConnection conn = new OleDbConnection(strConnection))
        {
            PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
            int val;
            try
            {
                val = cmd.ExecuteNonQuery();
            }
            finally
            {
                cmd.Parameters.Clear();
                conn.Close();
            }
            return val;
        }
    }
    public static int ExecuteNonQuery(string cmdText, params OleDbParameter[] commandParameters)
    {        OleDbCommand cmd = new OleDbCommand();        using (OleDbConnection conn = new OleDbConnection(strConnection))
        {
            PrepareCommand(cmd, conn, null, CommandType.StoredProcedure, cmdText, commandParameters);
            int val;
            try
            {
                val = cmd.ExecuteNonQuery();
            }
            finally
            {
                cmd.Parameters.Clear();
                conn.Close();
            }
            return val;
        }
    }    public static int ExecuteNonQuery(OleDbConnection connection, CommandType cmdType, string cmdText, params OleDbParameter[] commandParameters)
    {        OleDbCommand cmd = new OleDbCommand();        PrepareCommand(cmd, connection, null, cmdType, cmdText, commandParameters);
        int val;
        try
        {
            val = cmd.ExecuteNonQuery();
        }
        finally
        {
            cmd.Parameters.Clear();
            connection.Close();
        }
        return val;
    }
    #endregion    #region ExecuteReader
    public static OleDbDataReader ExecuteReader(string connectionString, CommandType cmdType, string cmdText, params OleDbParameter[] commandParameters)
    {
        OleDbCommand cmd = new OleDbCommand();
        OleDbConnection conn = new OleDbConnection(connectionString);
        OleDbDataReader rdr;
        try
        {
            PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
            rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
        }
        finally
        {
            cmd.Parameters.Clear();
        }
        return rdr;
    }
    public static OleDbDataReader ExecuteReader(CommandType cmdType, string cmdText, params OleDbParameter[] commandParameters)
    {
        OleDbCommand cmd = new OleDbCommand();
        OleDbConnection conn = new OleDbConnection(strConnection);
        OleDbDataReader rdr;
        try
        {
            PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
            rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
        }
        finally
        {
            cmd.Parameters.Clear();
        }
        return rdr;
    }
    public static OleDbDataReader ExecuteReader(string cmdText, params OleDbParameter[] commandParameters)
    {
        OleDbCommand cmd = new OleDbCommand();
        OleDbConnection conn = new OleDbConnection(strConnection);
        OleDbDataReader rdr;
        try
        {
            PrepareCommand(cmd, conn, null, CommandType.StoredProcedure, cmdText, commandParameters);
            rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
        }
        finally
        {
            cmd.Parameters.Clear();
            //conn.Close();
        }
        return rdr;
    }
    #endregion

解决方案 »

  1.   


    using System.Data.OleDb;
    using System.Collections;using System.Data.SqlClient;
    using System.Data.Sql;
    public class OleDbHelper
    {
        /// <summary>
        /// 得到数据库连接字符串
        /// </summary>
        public static string strConnection
        {
            get
            {
                if (!Common.IsEnglish)//判断Common.IsEnglish得到不同的字符串
                {
                    return "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + HttpContext.Current.Server.MapPath(Common.ChinesedbPath);            }
                else
                    return "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + HttpContext.Current.Server.MapPath(Common.EnglishdbPath);
            }
        }    //定义一个哈希表
        private static Hashtable parmCache = Hashtable.Synchronized(new Hashtable());    //执行一个SQL命令
        public static int ExecuteNonQuery(string connectionString, CommandType cmdType, string cmdText, params OleDbParameter[] commandParameters)
        {        OleDbCommand cmd = new OleDbCommand();        using (OleDbConnection conn = new OleDbConnection(connectionString))
            {
                PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
                int val;
                try
                {
                    val = cmd.ExecuteNonQuery();
                }
                finally
                {
                    cmd.Parameters.Clear();
                    conn.Close();
                }
                return val;
            }
        }    //这个方法和上面的方法差不多,上面的connectionString是参数,这个方法的connectionString是公共变量
        public static int ExecuteNonQuery(CommandType cmdType, string cmdText, params OleDbParameter[] commandParameters)
        {
            OleDbCommand cmd = new OleDbCommand();        using (OleDbConnection conn = new OleDbConnection(strConnection))
            {
                PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
                int val;
                try
                {
                    val = cmd.ExecuteNonQuery();
                }
                finally
                {
                    cmd.Parameters.Clear();
                    conn.Close();
                }
                return val;
            }
        }    public static int ExecuteNonQuery(string cmdText, params OleDbParameter[] commandParameters)
        {        OleDbCommand cmd = new OleDbCommand();        using (OleDbConnection conn = new OleDbConnection(strConnection))
            {
                PrepareCommand(cmd, conn, null, CommandType.StoredProcedure, cmdText, commandParameters);
                int val;
                try
                {
                    val = cmd.ExecuteNonQuery();
                }
                finally
                {
                    cmd.Parameters.Clear();
                    conn.Close();
                }
                return val;
            }
        }    public static int ExecuteNonQuery(OleDbConnection connection, CommandType cmdType, string cmdText, params OleDbParameter[] commandParameters)
        {        OleDbCommand cmd = new OleDbCommand();        PrepareCommand(cmd, connection, null, cmdType, cmdText, commandParameters);
            int val;
            try
            {
                val = cmd.ExecuteNonQuery();
            }
            finally
            {
                cmd.Parameters.Clear();
                connection.Close();
            }
            return val;
        }    public static OleDbDataReader ExecuteReader(string connectionString, CommandType cmdType, string cmdText, params OleDbParameter[] commandParameters)
        {
            OleDbCommand cmd = new OleDbCommand();
            OleDbConnection conn = new OleDbConnection(connectionString);
            OleDbDataReader rdr;
            try
            {
                PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
                rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
            }
            finally
            {
                cmd.Parameters.Clear();
            }
            return rdr;
        }    public static OleDbDataReader ExecuteReader(CommandType cmdType, string cmdText, params OleDbParameter[] commandParameters)
        {
            OleDbCommand cmd = new OleDbCommand();
            OleDbConnection conn = new OleDbConnection(strConnection);
            OleDbDataReader rdr;
            try
            {
                PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
                rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
            }
            finally
            {
                cmd.Parameters.Clear();
            }
            return rdr;
        }    public static OleDbDataReader ExecuteReader(string cmdText, params OleDbParameter[] commandParameters)
        {
            OleDbCommand cmd = new OleDbCommand();
            OleDbConnection conn = new OleDbConnection(strConnection);
            OleDbDataReader rdr;
            try
            {
                PrepareCommand(cmd, conn, null, CommandType.StoredProcedure, cmdText, commandParameters);
                rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
            }
            finally
            {
                cmd.Parameters.Clear();
            }
            return rdr;
        }
    }
      

  2.   

    非常感谢叶子 ;
    我学的本来是 SQL server 一出来实行,老板居然给个ACCESS 网站让我做