Skip to content

Commit cfb3bfa

Browse files
committed
- 修复 Xugu DataType 对应问题;#1934
1 parent ccd13ba commit cfb3bfa

File tree

8 files changed

+13
-1
lines changed

8 files changed

+13
-1
lines changed

Extensions/FreeSql.Extensions.ZeroEntity/ZeroDbContext.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -705,6 +705,7 @@ void LocalAdd(TableInfo table, T data, bool isCheck, ColumnInfo[] _tableReturnCo
705705
case DataType.ShenTong:
706706
case DataType.DuckDB:
707707
case DataType.Firebird: //firebird 只支持单条插入 returning
708+
case DataType.Xugu:
708709
if (_tableIdentitys.Length == 1 && _tableReturnColumns.Length == 1)
709710
{
710711
var idtval = OrmInsert(table).AppendData(data).ExecuteIdentity();

FreeSql.DbContext/DbSet/DbSetAsync.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ async Task AddPrivAsync(TEntity data, bool isCheck, CancellationToken cancellati
4949
case DataType.ShenTong:
5050
case DataType.DuckDB:
5151
case DataType.Firebird: //firebird 只支持单条插入 returning
52+
case DataType.Xugu:
5253
if (_tableIdentitys.Length == 1 && _tableReturnColumns.Length == 1)
5354
{
5455
await DbContextFlushCommandAsync(cancellationToken);

FreeSql.DbContext/DbSet/DbSetSync.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ void AddPriv(TEntity data, bool isCheck)
4848
case DataType.ShenTong:
4949
case DataType.DuckDB:
5050
case DataType.Firebird: //firebird 只支持单条插入 returning
51+
case DataType.Xugu:
5152
if (_tableIdentitys.Length == 1 && _tableReturnColumns.Length == 1)
5253
{
5354
DbContextFlushCommand();

FreeSql/Extensions/FreeSqlGlobalExtensions.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -751,6 +751,7 @@ WHERE @cte_ids IS NOT NULL
751751
case DataType.Firebird:
752752
case DataType.ClickHouse:
753753
case DataType.DuckDB:
754+
case DataType.Xugu:
754755
sql1ctePath = select._commonExpression.ExpressionWhereLambda(select._tables, select._tableRule,
755756
Expression.Call(typeof(Convert).GetMethod("ToString", new Type[] { typeof(string) }), pathSelector?.Body), select._diymemexpWithTempQuery, null, null);
756757
break;
@@ -847,6 +848,7 @@ WHERE @cte_ids IS NOT NULL
847848
case DataType.CustomMySql:
848849
case DataType.Firebird:
849850
case DataType.DuckDB:
851+
case DataType.Xugu:
850852
nsselsb.Append("RECURSIVE ");
851853
break;
852854
}
@@ -900,6 +902,7 @@ public static TSelect OrderByRandom<TSelect, T1>(this ISelect0<TSelect, T1> that
900902
case DataType.KingbaseES:
901903
case DataType.ShenTong:
902904
case DataType.DuckDB:
905+
case DataType.Xugu:
903906
return that.OrderBy("random()");
904907
case DataType.Oracle:
905908
case DataType.OdbcOracle:

FreeSql/Internal/CommonProvider/SelectProvider/Select0Provider.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1291,6 +1291,7 @@ public TSelect ForUpdate(bool noawait = false)
12911291
case DataType.OdbcPostgreSQL:
12921292
case DataType.CustomPostgreSQL:
12931293
case DataType.KingbaseES:
1294+
case DataType.Xugu:
12941295
_tosqlAppendContent = $"{_tosqlAppendContent} for update{(noawait ? " nowait" : "")}";
12951296
break;
12961297
case DataType.Oracle:

FreeSql/Internal/CommonProvider/UpdateJoinProvider.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ public void ValidateDataType(Action InterceptSqlServer, Action InterceptMySql, A
8282
case DataType.KingbaseES:
8383
case DataType.ShenTong:
8484
case DataType.DuckDB:
85+
case DataType.Xugu:
8586
InterceptPostgreSQL?.Invoke(); break;
8687
case DataType.Oracle:
8788
case DataType.OdbcOracle:
@@ -216,6 +217,7 @@ public IUpdateJoin<T1, T2> SetIf(bool condition, Expression<Func<T1, T2, bool>>
216217
case DataType.CustomPostgreSQL:
217218
case DataType.KingbaseES:
218219
case DataType.ShenTong:
220+
case DataType.Xugu:
219221
break;
220222
default:
221223
var tbalias = _query2Provider._tables.Where(tb => tb.Table == col.Table).FirstOrDefault()?.Alias ?? _query2Provider._tables[0].Alias;

FreeSql/Internal/CommonProvider/UpdateProvider.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1197,6 +1197,7 @@ public virtual void ToSqlExtension110(StringBuilder sb, bool isAsTableSplited)
11971197
case DataType.CustomPostgreSQL:
11981198
case DataType.KingbaseES:
11991199
case DataType.ShenTong:
1200+
case DataType.Xugu:
12001201
vcvalue = $"{_tableAlias}.{vcname}"; //set name = b.name
12011202
break;
12021203
default:

FreeSql/Internal/UtilsExpressionTree.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -397,6 +397,7 @@ public static ColumnInfo ColumnAttributeToInfo(TableInfo trytb, object entityDef
397397
case DataType.CustomPostgreSQL:
398398
case DataType.KingbaseES:
399399
case DataType.ShenTong:
400+
case DataType.Xugu:
400401
if (strlen < 0) colattr.DbType = $"TEXT{strNotNull}";
401402
else colattr.DbType = Regex.Replace(colattr.DbType, charPattern, m =>
402403
replaceCounter++ == 0 ? $"{m.Groups[1].Value}({strlen})" : m.Groups[0].Value);
@@ -470,7 +471,8 @@ public static ColumnInfo ColumnAttributeToInfo(TableInfo trytb, object entityDef
470471
case DataType.CustomPostgreSQL:
471472
case DataType.KingbaseES:
472473
case DataType.ShenTong: //驱动引发的异常:“System.Data.OscarClient.OscarException”(位于 System.Data.OscarClient.dll 中)
473-
colattr.DbType = $"BYTEA{strNotNull}"; //变长二进制串
474+
case DataType.Xugu:
475+
colattr.DbType = $"BYTEA{strNotNull}"; //变长二进制串
474476
break;
475477
case DataType.Oracle:
476478
case DataType.OdbcOracle:

0 commit comments

Comments
 (0)