版本记录,更新记录

待发布版本


绿色表作者源码已修复 ,黑色代表开发中蓝色是未重

未来需求:

数据过滤器支持字典

NativeAot支持

值对象映射 Value Object

record语法支持

CodeFirst默认值支持多库

支持函数 COALESCE

导航更新 支持乐观锁

导航方法添加Sum Avg等

支持全自动切换分表策略

多对多导航需求 https://www.donet5.com/ask/9/16897

在某次crud方法上 修改一下生成好的sql

导航一对一支持mappingfile

CodeFirst/CRUD自动识别多库

导航更新一对多支持 修改模式

轻微bug: 

PGSQL打包提交JSON

mysql bulkcopy byte[] -技术上暂时实现不了

CodeFIrst备份表功能完善

CodeFirst基类中XML备注读取不到

SqlServer CodeFirst 默认值老数据null的没变更过来

PGSQL CodeFirst不是自增,然后改成自增

 sqlserver 添加一个自增列 问题

一对一主表过滤 用!bool出错

https://www.donet5.com/ask/9/17129

Oracle新增单元用例

Oracle dbfirst int类型

Sqlite  StringComparison.OrdinalIgnoreCase

注意: 以上是还未发布功能




即将发布

添加获取存储过程名字方法

添加获取索引集合方法

Sqlite支持备份数据库

特殊情况下排序bool类型出现=1

支持LeftJoin<T>(exp,表名)

PGSQL查不到分区表

子查询支持List<int>这种查询Subquery<T>().ToList(it=>it.Id)

修复达梦报错: Subquery<T>().SelectJoinString(it=>it.Id,",") 


已发布版本

5.1.4.59

更新忽略NULL支持批量量

跟踪更新支持批量

支持了Updateable.Clone()

子查询支持单条

MySql支持了备份数据库

达梦CodeFirst BUG修复


5.1.4.58

重大体验提升:优化实体映射错误精确定具体字段 

修改删除接口过滤器,不能指定删除具体某一个问题

QueryableWithAttr.LeftJoin支持同服务器跨库

QueryableWithAttr.IncludeLeftJoin支持同服务器跨库


5.1.3.57

人大金仓假删除 BUG

优化跨库查询

支持了自定义类型 CRUD  

SqlServer支持JsonAarrayAny & JsonListAny 

DateTimeOffset最小值

IntoTable支持返回受影响行数

添加 Db.Ado.MasterQuery  


5.1.3.52

导航查询nullable类型不一致BUG

接口过滤器 Queryable<T,T2,T3>这种方式这种方式JOIN报错

ORACLE大数据插入返回-1

接口过滤器子查询未生效

修复Json数组函数在OR关系中问题

表达式中数据 函数(数组[i])解析BUG

PgSql获取表信息方法,备注不是建表时加上的 查询不到

 

5.1.3.51 

JValue兼容

InsertObject添加返回自增,异步等

BulkCopy DataTable重载 如果同一个表列不同缓存问题

子查询ToList 特殊情况下BUG

修复导航更新,主表忽略列,在多个Include下失效

添加函数 SqlFunc.SplitIn("1,2,3,4","5") 返回true或false

多表要景象


5.1.3.50

5.1.3.47+开始独有BUG:queryable.Clone() bug

新功能:接口过滤器BUG

达梦提升了部分兼容

人大金仓提升了部分兼容

字典插入类型为System.Text.Json.Element问题

兼容JValue


5.1.3.47

过滤器已支持接口

PgSql 实体中用char类型属性在表达式中特殊场景BUG

多表查询返回匿名对象设置为Json数组返回为NULL bug

达梦和Oracle一些特殊场景优化

人大金仓支持.net framework  

修复实体AOP+MergeTable在Select BUG

表达式部分优化


5.1.3.45

加强实体AOP功能

联表查询相同表过滤器只生效一个

跨库导航部分库支持了同服务器子表过滤(只更新了源码)

多库统一写法的 max string 

PgSql支持实体为char类型

SqlSugarScope 单例模式兼容 Furion定时任务和Quartz (只要继承名字叫IJob接口就行可以自建)以前需要db.CopyNew

SqlSugarScope 兼容 BackgroundService 以前需要db.CopyNew


5.1.3.43 

MySql char(36)并且实体为string报guid转string报错

完善oracle 达梦 @转:一些特殊情况转换不了BUG

修复PgSql 禁用自动转小写模式(ORACLE 达梦 金仓禁用转大写),导航删除BUG

修复PgSql表格查询 NoEqual 设置类型失效

更新中用Subquery特殊情况下BUG

过滤器和导航子表过滤特殊情况下存在参数冲突问题


5.1.3.42 

添加Object(需要是真实体类的Object)对象操作 db.InsertableByObject  UpdateableByObject DeleteableByObject

int8[] pgsql生成实体没加IsArray=true(还有json)

Subquery.ToList单表查询主表没有where bug

C# 10 DateOnly TimeOnly支持

修复特殊情况下 SqlFunc.Subquery<T>().ToList() BUG

修复Dbtype=ODBC插入报错BUG

实体特性添加 UpdateServerTime和UpdateSql

优化分表插入性能

修复达梦bit类型

MySql AddColumn支持备注

优化MySql建库


5.1.3.41 

Oracle、达梦、人大金仓支持 驼峰表 

人大金仓支持BulkCopy

EnableDiffLogEventIF Delete

高级保存添加 db.StorageableByObject (object o=new entity())这种用object接收的实体处理

实体特性添加 InsertServerTime和InsertSql(针对列插入用数据库时和插入用自定义SQL)


5.1.3.40

修复Subquery.ToListBUG

全面升级数据库驱动

修复高级保存保特列情况下DataTable的BUG

queryable多表查询AS没有处理转译


5.1.3.38

支持JSON CONTAINS

Subquery支地ToList()

PgSql SetColumn 数组

导航插入支持二级缓存


5.1.3.35

多表查询添加新的自动Select功能

Oracle dbfirst优化加强

人大金仓支持Schema

Storageable,大小写敏感,decimal匹配,没有时间更新吗

添加SqlFunc.AggregateSumNoNull (等于 isnull(sum(id),0))

添加 SqlFunc.Collate (区分大小写 目前支持ORACLE 12C+  MSSQL  MYSQL)

表达式部分优化

导航查询 查询部分部分字段优化 支持 ToList(it=>new class(){ id=it.id})

多租户支持删除非默认db的子db


5.1.3.34

过滤器语法简化和功能加强

Access CodeFirst BUG

Access导航插入BUG

Access异步返回自增方法报错

支持禁止读取实体XML配置

子查询拼接字符串StringJoin多字段 在多表查询中BUG

表达式优化:$"{it.xx} xx{}aa 字符串格式化进行全方面单元测试和BUG修复

Storageable更新时,实体主键字段类型是枚举时,执行错误


5.1.3.32

Questdb datetime 类型wherecolums

支持索引覆盖 include 

个别表达式查询兼容性提升

针对MySql安全性提升

ClickHouse支持BulkCopy

表达式子查询NotAny里面在用一对一属性报错

PgSql字典单条插入存在null类型问题


5.1.3.30

PgSql支持建大写表

PgSql字典插入支持返回自增列

添加AsType方法

字典插入或者更新 PGSQL中null无办法识别类型问题

SqlServer BulkCopyUpdate #temp找不到BUG

Sqlite DateTimeOffset查询BUG


5.1.3.29

ToTree支持了过滤

导航更新主表支持差异日志

导航更新支持主表插入

加强表达式语法支持

四级导航一对多更新存在脏数据没清掉

支持 老联表查询的 JoinType外部参数

导航DTO string.join一些特殊语法错误

SqlFunc.SelectAll("m")添加别名支持多库

Oracle number 枚举负数问题

表格树型查询JSON 2级类型不能是字母

导航一对一子表过滤主表格查询参数为空问题'

优化神通数据库部分方法

优化导航DTO部分兼容


5.1.3.27

修复人大金仓相关BUG

优化ToChildList

Oracle分页在 ToffsetPage下会用新分页


5.1.3.25 

SqlFunc.Subquery添加discount

JSON字段加了isignore查询不了

ToChlidList默认改回包含自已并且多了一个参数重载可以不包含自已

反向导航一对一更新操作设置字段别名不生效错


5.1.3.24

跨服务器联表查询 (用法晚点更新文档)

数据过滤器SetColumns 设置追加 不追加 ""

Oracle默认插入超过500条后性能优化

报表查询 参数为List联表AS的别名没有处理转释

CodeFirst.GetDifferenceTables(types).ToDiffString() 设置默认长度后不准确

SelectStringJoin别名BUG

添加InIF


5.1.3.23 

ToChildListAsync性能优化

疑难杂证 MySqlBulkcopy bool 值为 false只能存null 【老表把bit换成 tinyint(1) 】新表不需要处理

Select(SelectModel,AsNameFormatType)  添加重载支持不格式化AsName

多表查询Select((x,y)复杂表达式解析优化

查询函数Ids.Contains支持Nvarchar重载

修复Clickhouse添加表备注错误

兼容SqlSugarScope单例模式 在QuartZ中特殊场景出错BUG

mysql unit 查询大于Int值报错


5.1.3.22

SqlServer2016和mysql加强了JSON函数

修得5.1.3.22独有BUG  ,单表 Select<DTO>() 字段是关键词出错

SqlQueryable(sql).Select<string>("id")问题


5.1.3.21

单表Select<DTO>()优化加强,更加智能(当前版本存在个小BUG,预览版本已修复

读写分离 MasterQueryable 异步方下未走主库

表达式更新方式也支持数据过滤器

特殊情况查JSON问题

ClickHouse建表支持引擎设置

clickhouse SQL太长问题

clickhouse sqlquery<datetime>

qq用户多对多多层级插入

totree性能优化

表达式解析 Orderby   多个字段 xx.year,xxx.month bug

List型的Json类型在select只返回一个字段的时候返回空List

修复Access批量时间少了秒问题

db.Queryable(queryable) 支持匿名对象

多对多Any操作中间表过滤器失效

多对多中间表查询过滤器问字段没取别名

导航多对多插入和更新 支持在中间表添加默认值

Select 引用类型自定义SqlFunc函数解析不了


5.1.3.1

修复5.1.2.8独有BUG ExecuteReturnEntity使用自定义雪花给覆盖成SqlSugar雪花


5.1.2.8 (存在问题

添加关于JSON的SqlFunc函数 SqlFunc.Json开头

异步下导航转DTO的部分情况BUG

QuestDb并发报错问题 5.1.2.8-preview02

修复5.1.27独有版本出现的 配置查询 拼接字符串BUG

Sqlite bit bulkcopy和插入格式不一样

多对多 中间表过滤器未生效

创建数据库:SqlServer数据库名为字母开头报错


5.1.2.7 

优化了字符串相加,不需要用函数SqlFunc.MergeString

优化了参数为null变成 is null

导航插入 【反向一对一】 导航插入问题

Json 2 sql BUG修复

导航 多对多下 PGSQL 查询 是关键字问题


5.1.2.6

支持ORACLE特殊乱码 使用OarcleDbType.Navarchar2类型

支持嵌套事务

部表数据SqlFunc库函数优化

修复枚举配置成string 变量还是int问题


5.1.2.4

修复:多租户事务Furion下面 db.GetConnetion没提取变量在事务外面使用事务失效

最近文档新写法有问题,老文档用法没事

支持Gbase数据库

支持Odbc操作数据库

sqlqueryable(sql) 自动nolock在leftjoin 不应该带出 nolock

支持了批量返回自增

高级保存支持禁用过滤器

高级保存支持事务锁

添加GroupByIF

修复达梦自定义函数 DbType参数获取值是错误的

支持返回自增列集合

Sqlite datetimeoffset 插入BUG

PgSql CodeFirst设置默认值为1900-01-01格式时间错误


5.1.2.3  

CodeFirst添加As动态设置表名

修复部分库CodeFirst设置排序失效

修复神通数据库 CodeFirst BUG

mysql distinct 分页bug 

CodeFirst创建表xml生成备注字段和属性不一样未生效

更新忽略默认值功能 byte类型枚举报错

导航更新支持强制删除一对多的脏数据

新索引支持了给索引名加上库的替换符  "{db}indexname01"  数据库替换关键词

支持设置DbSize (急)

5.1.2.2

Subquery GROUP 实现 IN Select字段未取特性

QuestDb相关BUG修复

JSON 2 SQL相关BUG

跟踪字段不修改不更新


5.1.2.1

Clickhouse数据库支持 

Access时间 datetime? BUG

json 2 sql 相关完善和BUG

Select复杂情况下 int null值变成了0

添加数据查询后过滤器

子查询联表第二个T列在Select中没取特性名称

无实体联表添加AddJoinInfo(List)

子查询多个OrderBy报错 

修复达梦分表BUG

修复达梦CodeFirst自增第二次执行BUG

支持字典导航

开窗口函数支持多个orderby 和多个partition by

修复Oracle高级保存条件列为bool bug

修复 sqlsqlerver  SugarTable("[xx.xx.xx]") 格式的表在子查询出现的BUG


5.11

功能

支持 时序数据库 QuestDB

支持 瀚高 数据库

添加开窗口 SqlFunc.RowNumber

添加开窗口  SqlFunc.RowCount

添加子查询字符串逗号分割

添加db.CopyNew

支持跟踪方式变更字段进行修改

Bug:

Sqlite bulkcopy 字符串存 bool 值 BUG

导航更新特殊情况BUG

添加IsPrimaryKey重载

修复多层一对一导航过滤 其中有反向导航配置过滤问题

支持了实体修改更新只更新修改字段

Select new多层级特殊情况BUG

批量更新设置实体特性system.data.Dbype未生效

导航查询一对一 下面有2个一对一并且这2个一对一是一个类型对象 出现覆盖问题

部分性能优化


5.1

修复导航更新操作相关BUG

修复ACCESS子查询BUG,完善ACCESS分页相关文档

修复Subquery.Count() bug

修复导航查询一对一非主键关联在where中xx.xx.id出现的关联错误


5.0.9.8

添加了新乐观锁功能支持多库不依赖数据库类型

MySql BulkCopy double? 为NULL插入为 0 问题

Includes 一对多里面在用一对一条件过滤 BUG

优化了UtilsMehtod.ToSqlString时间格式

存在重大BUG子查询Count出错 ,请升级到5.1



更多

http://www.donet5.com/Ask/9/13206

文档:SqlSugar5.0