.NET餐厅管理系统sql数据帮助类执行SQL返回DataReader数据集、执行SQL语句,返回影响的记录数、执行多条SQL语句,实现数据库事务。
admin
2024-03-15 02:06:10

 #region //执行SQL返回DataReader数据集
    public SqlDataReader getDataReader(String sql_)
    {
        if (sql_ == "")
            return null;
        SqlDataReader returnReader = null;
        try
        {
            OpenDb();
            SqlCommand command=new SqlCommand(sql_,conn);
            returnReader = command.ExecuteReader();
        }
        catch (Exception e)
        {
            throw new Exception(e.ToString() + "  " + sql_);
        }
        return returnReader;
    }
    #endregion

///


    /// 执行SQL语句,返回影响的记录数
    ///

    /// SQL语句
    ///
    /// 影响的记录数
    public int ExecuteNonQuery(string sqlString, params SqlParameter[] cmdParms)
    {
        using (var connection = new SqlConnection(connectionString))
        {
            using (var cmd = new SqlCommand())
            {
                PrepareCommand(cmd, connection, null, sqlString, cmdParms);
                int rows = cmd.ExecuteNonQuery();
                cmd.Parameters.Clear();
                return rows;
            }
        }
    }
    ///
    /// 执行多条SQL语句,实现数据库事务。
    ///

    /// SQL语句的哈希表(key为sql语句,value是该语句的SqlParameter[])
    public void ExecuteSqlTran(Hashtable sqlStringList)
    {
        using (var conn = new SqlConnection(connectionString))
        {
            conn.Open();
            using (SqlTransaction trans = conn.BeginTransaction())
            {
                var cmd = new SqlCommand();
                try
                {
                    //循环
                    foreach (DictionaryEntry myDe in sqlStringList)
                    {
                        string cmdText = myDe.Key.ToString();
                        var cmdParms = (SqlParameter[])myDe.Value;
                        PrepareCommand(cmd, conn, trans, cmdText, cmdParms);
                        cmd.ExecuteNonQuery();
                        cmd.Parameters.Clear();
                    }
                    trans.Commit();
                }
                catch
                {
                    trans.Rollback();
                    throw;
                }
            }
        }
    }
       

相关内容

热门资讯

摸鱼、钓虾、吃瓜、赏荷…初夏时... 这个周末,一场场充满野趣的“田园嘉年华”在沪郊金山多个农场上演,吸引众多市民带着孩子下乡来,赛跑、吃...
原创 戚... 5月28日,北京环球影城迎来了一对温暖的家庭画面:戚薇和李承铉携三岁半的儿子Seven现身游玩。现场...
滹沱河畔 遇见“诗和远方” 图为市民在滹沱河畔休闲娱乐。 初夏五月,惠风和畅。徜徉在石家庄滹沱河生态区(城区段),澄澈河水蜿蜒...
在迪士尼排队两小时,我才看清V... 文丨沈理 在网上看到一则新闻: 上海迪士尼,创极速光轮排队区。一个父亲牵着七八岁的儿子,已经在烈日...
重庆文旅喊你去吃火锅、观山水、... 本网讯(草原云·正北方网记者 马丽侠)火锅、机车、文创、演艺……5月28日下午,重庆市文化和旅游发展...