using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;using System.Data;
using System.Data.Common;
using System.Data.OleDb;
using System.Data.SqlClient;namespace Utility
{
    class Dl_DbHelpSql
    {
        public string connString{get;set;}
        
        /*--------------  初始化函数   ----------------------*/
        public Dl_DbHelpSql()
        {
            //this.connString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=access地址;";
            //如果我想连接sql2008,怎么写??
        }        public Dl_DbHelpSql(String conStr)
        {
            this.connString = conStr;
        }        
        
        
        /*----------------     非静态函数区     ---------------------*/        //带参数的插入、删除、更新语句,返回受影响的记录的个数
        public int ExecuteNoQuery(string SQL, OleDbParameter[] parameters)
        {
            using (OleDbConnection conn = new OleDbConnection(connString))
            {
                OleDbCommand cmd = new OleDbCommand(SQL, conn);
                if (parameters != null)
                {  cmd.Parameters.AddRange(parameters);   }                try
                {
                    cmd.Connection.Open();
                    int rows = cmd.ExecuteNonQuery();
                    return rows;                }
                catch (System.Exception e)
                {
                    throw e;
                }
                finally 
                {
                    conn.Close();
                    cmd.Dispose();
                }            }
        }

解决方案 »

  1.   

    "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=access地址;uid=sa;pwd=123456";
      

  2.   

    你的数据库操作类都是Access的,要把所有的ole都改成sql,SQL不管是哪个版本的链接串都是一样的server=服务器;uid=sa;pwd=123456;database=数据库;
      

  3.   

    请认真阅读MSDN中下列链接的内容,这是一份完整的SqlConnection的说明:
    http://msdn.microsoft.com/zh-cn/library/ms254504.aspx
      

  4.   

    这是我部分的类代码,其中这块肯定有问题,小弟菜鸟,求教!SqlConnection connectionString = new SqlConnection("server=localhost;database=gongnuan;uid=sa;pwd=sa");//改成数据库名以前数据库连接都是写在web.config里的,这回客户要求写在类里,不会了求教!using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;using System.Data;
    using System.Data.Common;
    using System.Data.OleDb;
    using System.Data.SqlClient;namespace Utility
    {
        class Dl_DbHelpSql
        {
            SqlConnection connectionString = new SqlConnection("server=localhost;database=gongnuan;uid=sa;pwd=sa");//改成数据库名
            public Dl_DbHelpSql()
            {            
            }        #region 公用方法
            /// <summary>
            /// 判断是否存在某表的某个字段
            /// </summary>
            /// <param name="tableName">表名称</param>
            /// <param name="columnName">列名称</param>
            /// <returns>是否存在</returns>
            public static bool ColumnExists(string tableName, string columnName)
            {
                string sql = "select count(1) from syscolumns where [id]=object_id('" + tableName + "') and [name]='" + columnName + "'";
                object res = GetSingle(sql);
                if (res == null)
                {
                    return false;
                }
                return Convert.ToInt32(res) > 0;
            }
            public static int GetMaxID(string FieldName, string TableName)
            {
                string strsql = "select max(" + FieldName + ")+1 from " + TableName;
                object obj = GetSingle(strsql);
                if (obj == null)
                {
                    return 1;
                }
                else
                {
                    return int.Parse(obj.ToString());
                }
            }
            public static bool Exists(string strSql)
            {
                object obj = GetSingle(strSql);
                int cmdresult;
                if ((Object.Equals(obj, null)) || (Object.Equals(obj, System.DBNull.Value)))
                {
                    cmdresult = 0;
                }
                else
                {
                    cmdresult = int.Parse(obj.ToString());
                }
                if (cmdresult == 0)
                {
                    return false;
                }
                else
                {
                    return true;
                }
            }
            /// <summary>
            /// 表是否存在
            /// </summary>
            /// <param name="TableName"></param>
            /// <returns></returns>
            public static bool TabExists(string TableName)
            {
                string strsql = "select count(*) from sysobjects where id = object_id(N'[" + TableName + "]') and OBJECTPROPERTY(id, N'IsUserTable') = 1";
                //string strsql = "SELECT count(*) FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[" + TableName + "]') AND type in (N'U')";
                object obj = GetSingle(strsql);
                int cmdresult;
                if ((Object.Equals(obj, null)) || (Object.Equals(obj, System.DBNull.Value)))
                {
                    cmdresult = 0;
                }
                else
                {
                    cmdresult = int.Parse(obj.ToString());
                }
                if (cmdresult == 0)
                {
                    return false;
                }
                else
                {
                    return true;
                }
            }
            public static bool Exists(string strSql, params SqlParameter[] cmdParms)
            {
                object obj = GetSingle(strSql, cmdParms);
                int cmdresult;
                if ((Object.Equals(obj, null)) || (Object.Equals(obj, System.DBNull.Value)))
                {
                    cmdresult = 0;
                }
                else
                {
                    cmdresult = int.Parse(obj.ToString());
                }
                if (cmdresult == 0)
                {
                    return false;
                }
                else
                {
                    return true;
                }
            }
            #endregion        #region  执行简单SQL语句        /// <summary>
            /// 执行SQL语句,返回影响的记录数
            /// </summary>
            /// <param name="SQLString">SQL语句</param>
            /// <returns>影响的记录数</returns>
            public static int ExecuteSql(string SQLString)
            {
                using (SqlConnection connection = new SqlConnection(connectionString))
                {
                    using (SqlCommand cmd = new SqlCommand(SQLString, connection))
                    {
                        try
                        {
                            connection.Open();
                            int rows = cmd.ExecuteNonQuery();
                            return rows;
                        }
                        catch (System.Data.SqlClient.SqlException e)
                        {
                            connection.Close();
                            throw e;
                        }
                    }
                }
            }
      

  5.   

    SqlConnection conn = new SqlConnection("Data Source=实例名;Initial Catalog=数据库名;uid=用户名;pwd=密码");
      

  6.   

    去下个SQLHelper,连接MS SQL不是问题