sqlhelper是什么呀,好多人在说它,我看到好多版本,哪个是正宗的?
----------------------------------
看到好多网友说这个,我上网找了找,发现并不是一个版本呀,我晕了,难道自已写的数据库类,都称 sqlhelper吗?
哪个版本是正宗的呀,哪是正宗的下载呀。这个类是谁写的呀。另外,大家在实际的项目中,操作数据库用哪个类呀,说微软有企业类库,又是哪个呀?如果有好的类,我在项目中,就可以直接用了,多好呀,真有可以拿来改改就用的吗?

解决方案 »

  1.   

    没啥正宗的说法,只是简单封装一下数据库操作 完全可以自己写一个。Enterprise Library : http://msdn.microsoft.com/library/ff632023.aspx
      

  2.   

    数据库操作类
    自己写个ORM
    linq to sql
      

  3.   

    这个建议你自己写。。
    一般里面都有这些。
     
      连接类方法+执行类方法+存储操作类方法。
      Connection +Conmand+DataSet/DataTable/Read.....很多
      连接类通过静态方法来获取。
      

  4.   

    sqlHelper有针对各种数据库不同的版本。
    我用的是针对sql server数据库的版本。
    虽说自己也可以写一个,但有现成的,也就实行拿来主义,
    可以把精力花在其他需要用的地方。
      

  5.   

    就一个操作数据库的东西,你自己也可以整一个这个东西出来,不难的,可以设计能适用于好几种架构的组件出来。
    低价源码出售了,全是自己开发的代码,希望和大家一起交流,集百家之所长,希望能对大家有所帮助。
    网店地址:http://shop36675020.taobao.com
      

  6.   

        /// <summary>
        /// 将所有可能的对数据库的操作方法全部列举出来
        /// </summary>
        public static class SqlDBHelp
        {
            private static string _connStr = "server=;uid=sa;pwd=123;database=B2C";
            private static SqlConnection sqlcon;
            private static SqlTransaction trans;        /// <summary>
            /// 目的创建了与数据库底层操作的连接对象
            /// </summary>
            private static SqlConnection Connection
            {
                get
                {
                    if (sqlcon == null)
                    {
                        sqlcon = new SqlConnection(_connStr);
                        sqlcon.Open();
                    }
                    else if (sqlcon.State == ConnectionState.Broken || sqlcon.State == ConnectionState.Closed)
                    {
                        sqlcon.Close();
                        sqlcon.Open();
                    }
                    return sqlcon;
                }
            }        /// <summary>
            /// 单向的操作,执行SQL语句,返回受影响的行数
            /// </summary>
            /// <param name="strsql">Insert、Update、Delete</param>
            /// <returns>受影响的行数</returns>
            public static int GetExecute(string strsql)
            {
                SqlCommand sqlcmd = new SqlCommand(strsql,Connection);
                int i=sqlcmd.ExecuteNonQuery();
                CloseConn();            return i;
            }       
            /// <summary>
            /// 单向的操作,执行SQL语句,返回受影响的行数
            /// </summary>
            /// <param name="strsql">Insert、Update、Delete</param>        
            /// <param name="p">参数的集合</param>
            /// <returns>受影响的行数</returns>
            public static int GetExecute(string strsql, params SqlParameter[] p)
            {
                SqlCommand sqlcmd = new SqlCommand(strsql, Connection);
                sqlcmd.Parameters.AddRange(p);
                int i = sqlcmd.ExecuteNonQuery();
                CloseConn();            return i;
            }        /// <summary>
            /// 双向的操作语句。执行查询,返回查询的数据表
            /// </summary>
            /// <param name="strsql">Select语句</param>
            /// <returns>查询结果数据表</returns>
            public static DataTable GetTable(string strsql)
            {
                SqlDataAdapter sda = new SqlDataAdapter(strsql,Connection);
                DataTable dt = new DataTable();
                sda.Fill(dt);
                CloseConn();            return dt;
            }        /// <summary>
            /// 根据查询语句返回单个的查询结果
            /// </summary>
            /// <param name="strsql">Select语句</param>
            /// <returns>返回的单个值</returns>
            public static string GetSingle(string strsql)
            {
                SqlCommand sqlcmd = new SqlCommand(strsql,Connection);
                object o=sqlcmd.ExecuteScalar();
                CloseConn();            return o.ToString();
            }        /// <summary>
            /// 根据查询语句返回轻量级SqlDataReader对象
            /// </summary>
            /// <param name="strsql">Select语句</param>
            /// <returns>返回轻量级SqlDataReader对象</returns>
            public static SqlDataReader GetReader(string strsql)
            {
                SqlCommand sqlcmd = new SqlCommand(strsql,Connection);
                return sqlcmd.ExecuteReader(CommandBehavior.CloseConnection);
            }        /// <summary>
            /// 根据查询语句返回轻量级SqlDataReader对象
            /// </summary>
            /// <param name="strsql">Select语句</param>
            /// <returns>返回轻量级SqlDataReader对象</returns>
            public static SqlDataReader GetReader(string strsql,params SqlParameter[] p)
            {
                SqlCommand sqlcmd = new SqlCommand(strsql, Connection);
                sqlcmd.Parameters.AddRange(p);
                return sqlcmd.ExecuteReader(CommandBehavior.CloseConnection);
            }
            
            /// <summary>
            /// 关闭连接对象
            /// </summary>
            private static void CloseConn()
            {
                if (sqlcon != null)
                {
                    sqlcon.Close();
                    sqlcon = null;
                }
            }    }