5.0.1.03需求 BUG入口 返回

SqlSugar 老数据
7 2323

5.0.1.02版本已发布 

Oracle 手写SQL 用 null as 字段 ,映射问题

Oracle in超过1000特殊处理

CodeFirst支持唯一索引 

SqlFunc.IF 的.End 添加重载 End<string>()就会生成 null

SqlFunc 添加运算符 BitwiseAnd &   ,  BitwiseInclusiveOR |

SetColumn 支持JSON更新

code first  库名.表名 并且带有字段描述错误 

达梦guid.tostring BUG

达梦添加bit BUG

Oracle SqlFunc.ToDecimal BUG

Subqueryable  todate(addday)  BUG

Sqlite SqlFunc.DateIsSameDay BUG

Select 匿名对象 Json集合 BUG


在这个贴子下面回复新的BUG与需求禁止水贴


热忱回答7

  • oracle数据库的批量插入比起mysql和mssql慢很多。

    0 回复
  • @爱吃肉的路飞:好的

    0 回复
  • 多表转成一表查询功能bug : 就是我现在使用将多表转成单表查询的那个功能

     var dataQuery = base.DB.Queryable<S_SYS_Menu, S_SYS_Action>((m, n) => new JoinQueryInfos(JoinType.Inner, m.Id == n.MenuId)).Select((m, n) => new

                {

                    MenuId = m.Id,

                    MenuName = m.FullName,

                    ActionId = n.Id,

                    ActionName = n.FullName,

                    m.FormUrl,

                    n.Code

                });

    当我不分页的时候能够得到数据

     var list= await dataQuery.MergeTable().Where(m => m.ActionName.Contains("用户增加") && m.MenuName == "用户管理").ToListAsync();

    使用分页的时候就会报错

         var list1= await dataQuery.MergeTable().Where(m => m.ActionName.Contains("用户增加") && m.MenuName == "用户管理").ToPageListAsync(1,10);

    "ORA-00923: 未找到要求的 FROM 关键字

    我使用的是5.0.1版本,Oracle数据库




     ///<summary>

        ///菜单类

        ///</summary>

        [SugarTable("S_SYS_Menu")]

        public partial class S_SYS_Menu

        {

            public S_SYS_Menu()

            {

            }

                       /// <summary>

               /// Desc:主键

               /// Default:

               /// Nullable:False

               /// </summary>

            

               [SugarColumn(IsPrimaryKey=true)]

            public string Id { get; set; }

                        

               /// <summary>

               /// Desc:父级Id

               /// Default:

               /// Nullable:True

               /// </summary>

            

            public string ParentId { get; set; }


            /// <summary>

            /// Desc:模块类型:(菜单 0 ;页面 1)

            /// Default:

            /// Nullable:False

            /// </summary>


            public short MoudleType { get; set; }

                        

               /// <summary>

               /// Desc:菜单(页面)名

               /// Default:

               /// Nullable:True

               /// </summary>

            

            public string FullName { get; set; }


            /// <summary>

            /// Desc:菜单(页面)地址

            /// Default:

            /// Nullable:True

            /// </summary>


            public string FormUrl { get; set; }

                        

               /// <summary>

               /// Desc:是否需要权限(仅页面有效)

               /// Default:

               /// Nullable:False

               /// </summary>

            

            public short NeedAction { get; set; }

                        

               /// <summary>

               /// Desc:小图标

               /// Default:

               /// Nullable:True

               /// </summary>

            

            public string SmallIcon { get; set; }

                        

               /// <summary>

               /// Desc:大图标

               /// Default:

               /// Nullable:True

               /// </summary>

            

            public string BigIcon { get; set; }

                        

               /// <summary>

               /// Desc:是否显示在事务中心页面。0:显示;1:不显示

               /// Default:

               /// Nullable:False

               /// </summary>

            

            public short IsShowInAffairCenter { get; set; }

                        

               /// <summary>

               /// Desc:显示在工作区中。0:显示;1:不显示

               /// Default:

               /// Nullable:False

               /// </summary>

            

            public short IsShowInWorkSpace { get; set; }

                        

               /// <summary>

               /// Desc:是否展示在导航上。0:展示;1:不展示

               /// Default:

               /// Nullable:False

               /// </summary>

            

            public short IsRender { get; set; }


            /// <summary>

            /// Desc:1表示可用;0表示不可用

            /// Default:

            /// Nullable:True

            /// </summary>


            public short Enabled { get; set; }


            /// <summary>

            /// Desc:排序

            /// Default:

            /// Nullable:True

            /// </summary>


            public decimal OrderNumber { get; set; }


            /// <summary>

            /// Desc:1表示删除;0表示未删除

            /// Default:

            /// Nullable:True

            /// </summary>


            public short IsDeleted { get; set; }


            /// <summary>

            /// Desc:

            /// Default:

            /// Nullable:False

            /// </summary>


            public string CreateUser { get; set; }


            /// <summary>

            /// Desc:

            /// Default:

            /// Nullable:False

            /// </summary>


            public string CreateDate { get; set; }


            /// <summary>

            /// Desc:

            /// Default:

            /// Nullable:True

            /// </summary>


            public string CreateTime { get; set; }


            /// <summary>

            /// Desc:

            /// Default:

            /// Nullable:False

            /// </summary>


            public string ModifyUser { get; set; }


            /// <summary>

            /// Desc:

            /// Default:

            /// Nullable:False

            /// </summary>


            public string ModifyDate { get; set; }


            /// <summary>

            /// Desc:

            /// Default:

            /// Nullable:True

            /// </summary>


            public string ModifyTime { get; set; }

    }

       ///<summary>

        ///页面权限类

        ///</summary>

        [SugarTable("S_SYS_Action")]

        public partial class S_SYS_Action

        {

            public S_SYS_Action()

            {

            }

                       /// <summary>

               /// Desc:主键Id

               /// Default:

               /// Nullable:False

               /// </summary>

            

               [SugarColumn(IsPrimaryKey=true)]

            public string Id { get; set; }

            /// <summary>

            /// Desc:页面Id

            /// Default:

            /// Nullable:True

            /// </summary>


            public string MenuId { get; set; }


            /// <summary>

            /// Desc:权限Code

            /// Default:

            /// Nullable:True

            /// </summary>


            public string Code { get; set; }


            /// <summary>

            /// Desc:权限名称

            /// Default:

            /// Nullable:False

            /// </summary>

            public string FullName { get; set; }


            /// <summary>

            /// Desc:1表示可用;0表示不可用

            /// Default:

            /// Nullable:True

            /// </summary>


            public short Enabled { get; set; }


            /// <summary>

            /// Desc:排序

            /// Default:

            /// Nullable:True

            /// </summary>


            public decimal OrderNumber { get; set; }


            /// <summary>

            /// Desc:1表示删除;0表示未删除

            /// Default:

            /// Nullable:True

            /// </summary>


            public short IsDeleted { get; set; }


            /// <summary>

            /// Desc:

            /// Default:

            /// Nullable:False

            /// </summary>


            public string CreateUser { get; set; }


            /// <summary>

            /// Desc:

            /// Default:

            /// Nullable:False

            /// </summary>


            public string CreateDate { get; set; }


            /// <summary>

            /// Desc:

            /// Default:

            /// Nullable:True

            /// </summary>


            public string CreateTime { get; set; }


            /// <summary>

            /// Desc:

            /// Default:

            /// Nullable:False

            /// </summary>


            public string ModifyUser { get; set; }


            /// <summary>

            /// Desc:

            /// Default:

            /// Nullable:False

            /// </summary>


            public string ModifyDate { get; set; }


            /// <summary>

            /// Desc:

            /// Default:

            /// Nullable:True

            /// </summary>


            public string ModifyTime { get; set; }

            /// <summary>

            /// Desc:

            /// Default:

            /// Nullable:True

            /// </summary>


            public decimal ceshi { get; set; }


        }






    0 回复
  • @爱吃肉的路飞:实体也要给我

    0 回复
  • Mr、谢 Mr、谢 VIP0
    2020/11/11

    已升级到5.0.1.02,postgresql数据类型为json的时候,连表查询json数据没转换出来,下面是demo

    using SqlSugar;

    using System;

    using System.Collections.Generic;


    namespace PgSqlTest

    {

        internal class Program

        {

            [SugarTable("User")]

            public class User

            {

                [SugarColumn(IsNullable = false, ColumnDataType = "uuid", IsPrimaryKey = true)]

                public Guid Id { get; set; }


                /// <summary>

                /// 部门名称

                /// </summary>

                [SugarColumn(IsNullable = false)]

                public string Name { get; set; }


                /// <summary>

                /// 用户部门

                /// </summary>

                [SugarColumn(IsNullable = false, IsJson = true, ColumnDataType = "json")]

                public List<Department> UserDpt { get; set; }

            }


            [SugarTable("User2")]

            public class User2

            {

                [SugarColumn(IsNullable = false, ColumnDataType = "uuid", IsPrimaryKey = true)]

                public Guid Id { get; set; }


                [SugarColumn(IsNullable = false, ColumnDataType = "uuid")]

                public Guid UserId { get; set; }

            }


            public class Department

            {

                public Guid Id { get; set; }

                public string Name { get; set; }

            }


            private static void Main(string[] args)

            {

                SqlSugarClient db = new SqlSugarClient(

                 new ConnectionConfig()

                 {

                     ConnectionString = "*",

                     DbType = DbType.PostgreSQL,//设置数据库类型

                     IsAutoCloseConnection = true,//自动释放数据务,如果存在事务,在事务结束后释放

                     InitKeyType = InitKeyType.Attribute //从实体特性中读取主键自增列信息

                 });

                db.Aop.OnError = (exp) =>//SQL报错

                {

                    string sql = exp.Sql;

                    //exp.sql 这样可以拿到错误SQL

                };

                //db.DbMaintenance.CreateDatabase();

                db.CodeFirst.InitTables(typeof(User), typeof(User2));

                List<Department> departments = new List<Department>();

                departments.Add(new Department { Id = Guid.NewGuid(), Name = "研发部" });

                departments.Add(new Department { Id = Guid.NewGuid(), Name = "市场部" });

                Guid userId = Guid.NewGuid();

                User user = new User

                {

                    Id = userId,

                    Name = "张三",

                    UserDpt = departments

                };

                db.Insertable(user).ExecuteCommand();

                User2 user2 = new User2();

                user2.Id = Guid.NewGuid();

                user2.UserId = userId;


                db.Insertable(user2).ExecuteCommand();

                var data = db.Queryable<User, User2>((a, b) => new object[] { JoinType.Inner, a.Id == b.UserId })

                    .Where((a, b) => a.Id == userId)

                    .Select((a, b) => new

                    {

                        User = a,//这里面的json集合没数据

                        Items = a.UserDpt

                    }).ToList();

                Console.ReadKey();

            }

        }

    }


    0 回复
  • 1

    0 回复
  • @fate stay night:已经贴在帖子里

    0 回复