mirror of
https://github.com/dotnetcore/FreeSql.git
synced 2026-02-19 06:40:57 +08:00
- 修复 Xugu DataType 对应问题;#1934
This commit is contained in:
@@ -705,6 +705,7 @@ ManyToMany 级联删除中间表(注意不删除外部根)
|
||||
case DataType.ShenTong:
|
||||
case DataType.DuckDB:
|
||||
case DataType.Firebird: //firebird 只支持单条插入 returning
|
||||
case DataType.Xugu:
|
||||
if (_tableIdentitys.Length == 1 && _tableReturnColumns.Length == 1)
|
||||
{
|
||||
var idtval = OrmInsert(table).AppendData(data).ExecuteIdentity();
|
||||
|
||||
@@ -49,6 +49,7 @@ namespace FreeSql
|
||||
case DataType.ShenTong:
|
||||
case DataType.DuckDB:
|
||||
case DataType.Firebird: //firebird 只支持单条插入 returning
|
||||
case DataType.Xugu:
|
||||
if (_tableIdentitys.Length == 1 && _tableReturnColumns.Length == 1)
|
||||
{
|
||||
await DbContextFlushCommandAsync(cancellationToken);
|
||||
|
||||
@@ -48,6 +48,7 @@ namespace FreeSql
|
||||
case DataType.ShenTong:
|
||||
case DataType.DuckDB:
|
||||
case DataType.Firebird: //firebird 只支持单条插入 returning
|
||||
case DataType.Xugu:
|
||||
if (_tableIdentitys.Length == 1 && _tableReturnColumns.Length == 1)
|
||||
{
|
||||
DbContextFlushCommand();
|
||||
|
||||
@@ -751,6 +751,7 @@ JOIN {select._commonUtils.QuoteSqlName(tbDbName)} a ON cte_tbc.cte_id = a.{selec
|
||||
case DataType.Firebird:
|
||||
case DataType.ClickHouse:
|
||||
case DataType.DuckDB:
|
||||
case DataType.Xugu:
|
||||
sql1ctePath = select._commonExpression.ExpressionWhereLambda(select._tables, select._tableRule,
|
||||
Expression.Call(typeof(Convert).GetMethod("ToString", new Type[] { typeof(string) }), pathSelector?.Body), select._diymemexpWithTempQuery, null, null);
|
||||
break;
|
||||
@@ -847,6 +848,7 @@ JOIN {select._commonUtils.QuoteSqlName(tbDbName)} a ON cte_tbc.cte_id = a.{selec
|
||||
case DataType.CustomMySql:
|
||||
case DataType.Firebird:
|
||||
case DataType.DuckDB:
|
||||
case DataType.Xugu:
|
||||
nsselsb.Append("RECURSIVE ");
|
||||
break;
|
||||
}
|
||||
@@ -900,6 +902,7 @@ SELECT ");
|
||||
case DataType.KingbaseES:
|
||||
case DataType.ShenTong:
|
||||
case DataType.DuckDB:
|
||||
case DataType.Xugu:
|
||||
return that.OrderBy("random()");
|
||||
case DataType.Oracle:
|
||||
case DataType.OdbcOracle:
|
||||
|
||||
@@ -1291,6 +1291,7 @@ namespace FreeSql.Internal.CommonProvider
|
||||
case DataType.OdbcPostgreSQL:
|
||||
case DataType.CustomPostgreSQL:
|
||||
case DataType.KingbaseES:
|
||||
case DataType.Xugu:
|
||||
_tosqlAppendContent = $"{_tosqlAppendContent} for update{(noawait ? " nowait" : "")}";
|
||||
break;
|
||||
case DataType.Oracle:
|
||||
|
||||
@@ -82,6 +82,7 @@ namespace FreeSql.Internal.CommonProvider
|
||||
case DataType.KingbaseES:
|
||||
case DataType.ShenTong:
|
||||
case DataType.DuckDB:
|
||||
case DataType.Xugu:
|
||||
InterceptPostgreSQL?.Invoke(); break;
|
||||
case DataType.Oracle:
|
||||
case DataType.OdbcOracle:
|
||||
@@ -216,6 +217,7 @@ namespace FreeSql.Internal.CommonProvider
|
||||
case DataType.CustomPostgreSQL:
|
||||
case DataType.KingbaseES:
|
||||
case DataType.ShenTong:
|
||||
case DataType.Xugu:
|
||||
break;
|
||||
default:
|
||||
var tbalias = _query2Provider._tables.Where(tb => tb.Table == col.Table).FirstOrDefault()?.Alias ?? _query2Provider._tables[0].Alias;
|
||||
|
||||
@@ -1197,6 +1197,7 @@ namespace FreeSql.Internal.CommonProvider
|
||||
case DataType.CustomPostgreSQL:
|
||||
case DataType.KingbaseES:
|
||||
case DataType.ShenTong:
|
||||
case DataType.Xugu:
|
||||
vcvalue = $"{_tableAlias}.{vcname}"; //set name = b.name
|
||||
break;
|
||||
default:
|
||||
|
||||
@@ -397,6 +397,7 @@ namespace FreeSql.Internal
|
||||
case DataType.CustomPostgreSQL:
|
||||
case DataType.KingbaseES:
|
||||
case DataType.ShenTong:
|
||||
case DataType.Xugu:
|
||||
if (strlen < 0) colattr.DbType = $"TEXT{strNotNull}";
|
||||
else colattr.DbType = Regex.Replace(colattr.DbType, charPattern, m =>
|
||||
replaceCounter++ == 0 ? $"{m.Groups[1].Value}({strlen})" : m.Groups[0].Value);
|
||||
@@ -470,7 +471,8 @@ namespace FreeSql.Internal
|
||||
case DataType.CustomPostgreSQL:
|
||||
case DataType.KingbaseES:
|
||||
case DataType.ShenTong: //驱动引发的异常:“System.Data.OscarClient.OscarException”(位于 System.Data.OscarClient.dll 中)
|
||||
colattr.DbType = $"BYTEA{strNotNull}"; //变长二进制串
|
||||
case DataType.Xugu:
|
||||
colattr.DbType = $"BYTEA{strNotNull}"; //变长二进制串
|
||||
break;
|
||||
case DataType.Oracle:
|
||||
case DataType.OdbcOracle:
|
||||
|
||||
Reference in New Issue
Block a user