zoukankan      html  css  js  c++  java
  • SqlSugar 执行sql语句

                var t12 = psdb.Db.SqlQueryable<dynamic>
                    ("sql")
                    .OrderBy(x => x.CreateTime, OrderByType.Desc)
                    .ToPageList(pageModel.PageIndex, pageModel.PageSize, ref totalCount);//返回动态类型
    namespace Dal
    {
        public class Dal_News : DbContext<Model_News>
        {
            #region Dal
    
            /// <summary>
            /////插入一条数据,插入并返回受影响行数用ExecuteCommand 
            /// </summary>
            /// <param name="model"></param>
            /// <returns></returns>
            public int Insert_(Model_News model)
            {
                return Db.Insertable(model).ExecuteCommand();
            }
    
            public DataTable GetDataTable_(string sql)
            {
                return Db.Ado.GetDataTable(sql);
            }
    
    
            //string.Format("select  max(M_Serial)M_Serial  from T_Sys_MenuInfo  where 1=1 and M_PKey = 0")
            /// <summary>
            /// 执行sql 语句   返回一行一列
            /// </summary>
            /// <param name="sql"></param>
            /// <returns></returns>
            public object GetOneRowOneColumn_(string sql)
            {
                var dt = Db.Ado.GetDataTable(sql);
                if (dt.Rows.Count > 0)
                {
                    return dt.Rows[0][0];
                }
                return null;
            }
    
    
    
            public DataTable selectTable()
            {
                string sql = "SELECT  1 as nId,0 as num,'' as name,'' as link ";
                return Db.Ado.GetDataTable(sql);
            }
    
    
            public DataTable SelectTop(string where, int top)
            {
                string sql = "SELECT TOP " + top + " * FROM [News] " + where;
                return GetDataTable_(sql);
            }
    
            #endregion
        }
    
    }
     
    
    
            #region 执行
    
            public DataTable ExecuteDataTable(DbCommand cmd)
            {
                var sql = cmd.CommandText;
                var paras = cmd.Parameters;
                if (paras.Count > 0)
                {
                    //参数1
                    var data = new List<SugarParameter>();
                    for (int i = 0; i < paras.Count; i++)
                    {
                        data.Add(new SugarParameter(paras[i].ParameterName, paras[i].Value));
                    }
                    return dal.Db.Ado.GetDataTable(sql, data);
                }
                else
                {
                    return dal.Db.Ado.GetDataTable(sql);
                }
            }
    
            public DataRow ExecuteDataRow(DbCommand cmd)
            {
                DataTable dataTable = new DataTable();
                var sql = cmd.CommandText;
                var paras = cmd.Parameters;
                if (paras.Count > 0)
                {
                    //参数1
                    var data = new List<SugarParameter>();
                    for (int i = 0; i < paras.Count; i++)
                    {
                        data.Add(new SugarParameter(paras[i].ParameterName, paras[i].Value));
                    }
                    dataTable = dal.Db.Ado.GetDataTable(sql, data);
                }
                else
                {
                    dataTable = dal.Db.Ado.GetDataTable(sql);
                }
    
                if (dataTable.Rows.Count > 0)
                {
                    return dataTable.Rows[0];
                }
                else
                {
                    return null;
                }
            }
    
            public int ExecuteNonQuery(DbCommand cmd)
            {
                var sql = cmd.CommandText;
                var paras = cmd.Parameters;
                if (paras.Count > 0)
                {
                    var data = new List<SugarParameter>();
                    for (int i = 0; i < paras.Count; i++)
                    {
                        data.Add(new SugarParameter(paras[i].ParameterName, paras[i].Value));
                    }
                    return dal.Db.Ado.ExecuteCommand(sql, data);
                }
                else
                {
                    return dal.Db.Ado.ExecuteCommand(sql);
                }
            }
    
            public object ExecuteScalar(DbCommand cmd)
            {
    
                DataTable dataTable = new DataTable();
                var sql = cmd.CommandText;
                var paras = cmd.Parameters;
                if (paras.Count > 0)
                {
                    //参数1
                    var data = new List<SugarParameter>();
                    for (int i = 0; i < paras.Count; i++)
                    {
                        data.Add(new SugarParameter(paras[i].ParameterName, paras[i].Value));
                    }
                    dataTable = dal.Db.Ado.GetDataTable(sql, data);
                }
                else
                {
                    dataTable = dal.Db.Ado.GetDataTable(sql);
                }
    
                if (dataTable.Rows.Count > 0)
                {
                    return dataTable.Rows[0][0];
                }
                else
                {
                    return null;
                }
            }
    
            /// <summary>
            /// 摘要:
            ///     数据分页函数
            /// 参数:
            ///     cmdText:传入要执行sql语句
            ///     orderField:排序字段
            ///     orderType:排序类型
            ///     pageIndex:当前页
            ///     pageSize:页大小
            ///     count:返回查询条数
            /// </summary>
            public DataTable GetPageList(string cmdText, string orderField, string orderType, int pageIndex, int pageSize, ref int count)
            {
                int num = (pageIndex - 1) * pageSize;
                int num1 = (pageIndex) * pageSize;
                string sql = "Select * From (Select ROW_NUMBER() Over (Order By " + orderField + " " + orderType;
                sql += ") As rowNum, * From (" + cmdText + ") As T ) As N Where rowNum > " + num + " And rowNum <= " + num1;
                string sql1 = "Select Count(1) From (" + cmdText + ") As t";
                DbCommand cmd = GetSqlStringCommond(sql1);
                count = (int)ExecuteScalar(cmd);
                cmd = GetSqlStringCommond(sql);
                return ExecuteDataTable(cmd);
            }
    
            #endregion
  • 相关阅读:
    《C++ Primer》笔记string,vector
    《C++ Primer》笔记创建动态数组new,delete
    《C++ Primer》笔记迭代器iterator
    浅析jQuery基础框架
    linux常用命令
    Javascript常用对象详细讲解
    Javascript兼容多种浏览器
    Vim常用命令
    提高 web 应用性能之 JavaScript 性能调优
    jQuery LigerUI使用教程入门篇
  • 原文地址:https://www.cnblogs.com/enych/p/14840397.html
Copyright © 2011-2022 走看看