ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

sqlHelper ---转载

2020-03-11 22:06:25  阅读:303  来源: 互联网

标签:cmdText sqlHelper para cmd new SqlConnection 转载 con


//引入命名空间
using System.Data.SqlClient;

/// <summary>
/// SqlHelper 的摘要说明
/// </summary>
public class SqlHelper
{
    private static readonly string sqlcon = ConfigurationManager.ConnectionStrings["enterpriseCon"].ConnectionString;

    //建立连接方法
    public SqlConnection createCon()
    {
        SqlConnection con = new SqlConnection(sqlcon);
        if (con.State != ConnectionState.Open)
            con.Open();
        return con;
    }
    //准备command命令
    public static void prepareCommand(SqlConnection con, SqlCommand cmd, SqlTransaction trans, CommandType cmdType, string cmdText, SqlParameter[] para)
    {
        //如果数据库连接没有打开  则打开连接
        if (con.State != ConnectionState.Open)
        {
            con.Open();
        }
        cmd.Connection = con;
        cmd.CommandText = cmdText;
        if (trans != null)//如果trans存在的话 执行以下命令
        {
            cmd.Transaction = trans;
        }
        cmd.CommandText = cmdText;
        if (para != null)//如果para不为空 遍历一遍para
        {
            foreach (SqlParameter pa in para)
            {
                cmd.Parameters.Add(pa);
            }
        }
    }

    //从数据库中读取数据源 返回一个SqlDataReader对象
    public static SqlDataReader executeReader(string cmdText, CommandType cmdType, SqlParameter[] para)
    {
        //定义连接
        SqlConnection con = new SqlConnection(sqlcon);
        //捕获可能发生的异常
        try
        {
            SqlCommand cmd = new SqlCommand();
            prepareCommand(con, cmd, null, cmdType, cmdText, para);

            SqlDataReader sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
            cmd.Parameters.Clear();
            return sdr;
        }
        catch (Exception)
        {
            throw;
        }
    }

    //更新数据库方法(增加,删除)
    public static int executeNonQuery(string cmdText, CommandType cmdType, SqlParameter[] para)
    {
        using (SqlConnection con = new SqlConnection(sqlcon))
        {
            try
            {
                SqlCommand cmd = new SqlCommand();
                prepareCommand(con, cmd, null, cmdType, cmdText, para);
                int result = cmd.ExecuteNonQuery();
                cmd.Parameters.Clear();
                return result;
            }
            catch (Exception)
            {
                throw;
            }
        }
    }

    //取得数据库中一行的值
    public static string executeScalar(string cmdText, CommandType cmdType, SqlParameter[] para)
    {
        using (SqlConnection con = new SqlConnection(sqlcon))
        {
            try
            {
                SqlCommand cmd = new SqlCommand();
                prepareCommand(con, cmd, null, cmdType, cmdText, para);
                string result = Convert.ToString(cmd.ExecuteScalar());
                cmd.Parameters.Clear();
                return result;
            }
            catch (Exception)
            {

                throw;
            }
        }
    }

    //DataSet
    public static DataSet executeDataAdapter(string cmdText,CommandType cmdType,SqlParameter[] para) {
        using (SqlConnection con=new SqlConnection(sqlcon))
        {
            try
            {
                SqlCommand cmd = new SqlCommand();
                prepareCommand(con, cmd, null, cmdType, cmdText, para);
                SqlDataAdapter sda = new SqlDataAdapter(cmd);
                DataSet ds = new DataSet();
                sda.Fill(ds);
                cmd.Parameters.Clear();
                return ds;
            }
            catch (Exception)
            {
                throw;
            }
        }    
    }
}

 

标签:cmdText,sqlHelper,para,cmd,new,SqlConnection,转载,con
来源: https://www.cnblogs.com/bedfly/p/12465801.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有