Releases: 0x1000000/SqExpress
Releases · 0x1000000/SqExpress
v1.1.1
v1.1.0
1.1.0
New Features
- Dynamic table metadata creation/modification with
SqTable
class
Bugfix
- It adds conversion from float to double when reading from column with real type.
- varbinary column explicit length now limited with 8000. Leave the length unspecified to get max length
v1.0.0
New Features
- Retrieving of database tables metadata + comparison
- MERGE expression builder
- Table Value Functions
- All aggregate functions now can be used with
OVER(...)
- SqDatabase can query IAsyncEnumerable<ISqRecord> (for .Net 6)
- SqDatabase supports async version for all I/O operation (for .Net 6)
expr.SyntaxTree().ModifyDescendants(modifier)
new method that returns object of the same type.- arguments of OR and AND operators now can be nullable (for .Net 6)
- DateDiff function + polyfills for Postgresql and MySql
GetParentTables()
for TableBase()
Breaking Changes
- Values Constructor in MYSQL now is implemented through UNION ALL
- .Net Framework is not supported anymore, however, .Net Standard 2.0 is still supported
- .Net less than 6 now use .Net Standard 2.0 which does not have some functions
- SyntaxTreeActions structure now has a generic parameter
v1.0.0-beta.2
- Retrieving of database tables metadata + comparison
- Table Value Functions
v1.0.0-beta
New Features
- Retrieving of database tables metadata + comparison (works only for MS SQL so far)
- MERGE expression builder
Breaking Changes
- Values Constructor in MYSQL now is implemented through UNION ALL
- .Net Framework is not supported anymore, however, .Net Standard 2.0 is still supported
v0.4.1
v0.4.0
0.4.0.0
New Features
- CTE (see readme.md)
SqQueryBuilder.ValueQuery(...)
- It allows using a sub-query as a value (e.g. in boolean expressions or a column)- Powershell commandlets Gen-Tables and Gen-Models in Package Manager Console
- Syntax Tree WalkThrough method has a new overload with a link to parent node
- SqModels now have new methods: GetColumnsWithPrefix, ReadWithPrefix, IsNull, IsNullWithPrefix
Breaking Changes
- Concat helper was renamed to Combine (to avoid a conflict with Linq)
v0.3.3
v0.3.2
v0.3.1
0.3.1.0
New Features
- the DTO code-generator now has a parameter that allows generating C# records:
--model-type ImmutableClass|Record
or<SqModelGenType>ImmutableClass|Record</SqModelGenType>
; - "CheckExistenceBy" in the Insert data builder what adds WHERE EXISTS(...) to a Insert source to avoid duplicates inserting;
- ExistsIn<TTable>(..predicate..) ... - Helper that returns boolean expression
EXISTS(SELECT 1 FROM TTable WHERE ..Predicate..)
- QueryPage extension for OffsetFetch queries.
Bugfix
- When some column(s) in values constructor contains only nulls, sqexpress now adds an explicit type cast for the first cell e.g.
CAST(NULL as int)
- MergeDataInto now allows only keys mapping unless WhenMatchThenUpdate is defined (without additional updates)
- Derived tables now can have 0 declared columns