DbHelper,SqlHelper操作类

上篇文章中提到了网上流传的DbHelper(SqlHelper)类的问题,现在贴上修正版本。

using System;
using System.Collections.Generic;
using System.Text;
using System.Data.SqlClient;
using System.Web;
using System.Configuration;
using System.Data;
using XueBa.Config;

namespace XueBa.SqlServer
{
    public class DbHelper
    {
        public static readonly string ConnectionString = @"Data Source=(local)\SQLEXPRESS;Initial Catalog=XueBa;Persist Security Info=True;User ID=sa;Password=********";

        public static SqlConnection getConnection()
        {
            return new SqlConnection(ConnectionString);
        }

        public static int ExecuteNonQuery(String sqlText)
        {
            SqlCommand cmd = new SqlCommand();
            using (SqlConnection conn = new SqlConnection(ConnectionString))
            {
                conn.Open();
                cmd.Connection = conn;
                cmd.CommandText = sqlText;
                int value = cmd.ExecuteNonQuery();
                return value;
            }
        }
public static SqlDataReader ExecuteReader(String sqlText, SqlConnection conn)
        {
            SqlCommand cmd = new SqlCommand();
            try
            {
                conn.Open();
                cmd.Connection = conn;
                cmd.CommandText = sqlText;
                SqlDataReader reader = cmd.ExecuteReader();
                return reader;
            }
            catch (Exception e)
            {
                
                conn.Close();
                throw e;
               // return null;
            }
        }

        public static DataSet ExecuteDataSet(String sqlText)
        {
            SqlCommand cmd = new SqlCommand();
            DataSet ds = new DataSet();
            using (SqlConnection conn = new SqlConnection(ConnectionString))
            {
                conn.Open();
                cmd.Connection = conn;
                cmd.CommandText = sqlText;
                using (SqlDataAdapter da = new SqlDataAdapter())
                {
                    da.SelectCommand = cmd;
                    da.Fill(ds);
                    return ds;
                }
            }
        }

        public static DataTable ExecuteDataTable(String sqlText)
        {
            SqlCommand cmd = new SqlCommand();
            DataTable dt = new DataTable();
            using (SqlConnection conn = new SqlConnection(ConnectionString))
            {
                conn.Open();
                cmd.Connection = conn;
                cmd.CommandText = sqlText;
                using (SqlDataAdapter da = new SqlDataAdapter())
                {
                    da.SelectCommand = cmd;
                    da.Fill(dt);
                    return dt;
                }
            }
        }

        public static int getSingleInt(String sqlText)
        {
            SqlCommand cmd = new SqlCommand();
            SqlConnection conn = new SqlConnection(ConnectionString);
            try
            {
                conn.Open();
                cmd.Connection = conn;
                cmd.CommandText = sqlText;
                SqlDataReader reader = cmd.ExecuteReader();
                reader.Read();
                if (reader.IsDBNull(0))
                    return 0;
                else
                    return reader.GetInt32(0);
            }
            catch (Exception e)
            {
                conn.Close();
                return -1;
            }
            finally { conn.Close(); }
        }
    }
}
posted @ 2012-11-09 23:53  MagicCode1023  阅读(1918)  评论(1编辑  收藏  举报