mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2026-02-27 16:50:33 +08:00
Optimize ORACLE
This commit is contained in:
@@ -138,7 +138,18 @@ namespace SqlSugar
|
|||||||
}
|
}
|
||||||
primaryKeyValues.Add(value);
|
primaryKeyValues.Add(value);
|
||||||
}
|
}
|
||||||
if (primaryKeyValues.Count < 10000)
|
if (this.Context.CurrentConnectionConfig.DbType==DbType.Oracle &&primaryKeyValues.Count >= 1000)
|
||||||
|
{
|
||||||
|
List<string> inItems = new List<string>();
|
||||||
|
this.Context.Utilities.PageEach(primaryKeyValues, 999, pageItems =>
|
||||||
|
{
|
||||||
|
var inValueString = pageItems.ToArray().ToJoinSqlInVals();
|
||||||
|
var whereItem= string.Format(DeleteBuilder.WhereInTemplate, SqlBuilder.GetTranslationColumnName(primaryFields.Single()), inValueString);
|
||||||
|
inItems.Add(whereItem);
|
||||||
|
});
|
||||||
|
Where($"({string.Join(" OR ", inItems)})");
|
||||||
|
}
|
||||||
|
else if (primaryKeyValues.Count < 10000)
|
||||||
{
|
{
|
||||||
var inValueString = primaryKeyValues.ToArray().ToJoinSqlInVals();
|
var inValueString = primaryKeyValues.ToArray().ToJoinSqlInVals();
|
||||||
Where(string.Format(DeleteBuilder.WhereInTemplate, SqlBuilder.GetTranslationColumnName(primaryFields.Single()), inValueString));
|
Where(string.Format(DeleteBuilder.WhereInTemplate, SqlBuilder.GetTranslationColumnName(primaryFields.Single()), inValueString));
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<package >
|
<package >
|
||||||
<metadata>
|
<metadata>
|
||||||
<id>SqlSugarCore</id>
|
<id>SqlSugarCore</id>
|
||||||
<version>5.1.4.147-preview03</version>
|
<version>5.1.4.147-preview04</version>
|
||||||
<authors>sunkaixuan</authors>
|
<authors>sunkaixuan</authors>
|
||||||
<owners>果糖大数据科技</owners>
|
<owners>果糖大数据科技</owners>
|
||||||
<licenseUrl>http://www.apache.org/licenses/LICENSE-2.0.html</licenseUrl>
|
<licenseUrl>http://www.apache.org/licenses/LICENSE-2.0.html</licenseUrl>
|
||||||
|
|||||||
Reference in New Issue
Block a user