PageSize MySqlIgnore

This commit is contained in:
sunkaixuan
2025-01-03 13:53:18 +08:00
parent 89abb0f139
commit 1191385c63
4 changed files with 15 additions and 4 deletions

View File

@@ -17,7 +17,7 @@ namespace SqlSugar
public DiffLogModel DiffModel { get; internal set; }
public bool IsOffIdentity { get; internal set; }
public bool IsInsertColumnsNull { get; internal set; }
public bool IsMySqlIgnore { get; internal set; }
public int ExecuteCommand()
{
if (DataList.Count() == 1 && DataList.First() == null)
@@ -35,7 +35,7 @@ namespace SqlSugar
}
this.Context.Utilities.PageEach(DataList, PageSize, pageItem =>
{
result += this.Context.Insertable(pageItem).AS(TableName).IgnoreColumnsNull(this.IsInsertColumnsNull).OffIdentity(IsOffIdentity).EnableDiffLogEventIF(IsEnableDiffLogEvent, DiffModel).InsertColumns(InsertColumns.ToArray()).ExecuteCommand();
result += this.Context.Insertable(pageItem).AS(TableName).MySqlIgnore(IsMySqlIgnore).IgnoreColumnsNull(this.IsInsertColumnsNull).OffIdentity(IsOffIdentity).EnableDiffLogEventIF(IsEnableDiffLogEvent, DiffModel).InsertColumns(InsertColumns.ToArray()).ExecuteCommand();
});
if (isNoTran)
{

View File

@@ -510,6 +510,7 @@ namespace SqlSugar
result.TableName = this.InsertBuilder.AsName;
result.IsEnableDiffLogEvent = this.IsEnableDiffLogEvent;
result.DiffModel = this.diffModel;
result.IsMySqlIgnore = this.InsertBuilder.MySqlIgnore;
result.IsOffIdentity = this.InsertBuilder.IsOffIdentity;
if(this.InsertBuilder.DbColumnInfoList.Any())
result.InsertColumns = this.InsertBuilder.DbColumnInfoList.GroupBy(it => it.TableId).First().Select(it=>it.DbColumnName).ToList();
@@ -567,7 +568,16 @@ namespace SqlSugar
this.InsertBuilder.MySqlIgnore = true;
return this;
}
public IInsertable<T> MySqlIgnore(bool isIgnore) {
if (isIgnore)
{
return MySqlIgnore();
}
else
{
return this;
}
}
public IInsertable<T> InsertColumns(Expression<Func<T, object>> columns)
{
if (columns == null) return this;

View File

@@ -64,6 +64,7 @@ namespace SqlSugar
SplitInsertable<T> SplitTable(SplitType splitType);
void AddQueue();
IInsertable<T> MySqlIgnore();
IInsertable<T> MySqlIgnore(bool isIgnore);
IInsertable<T> PostgreSQLConflictNothing(string[] columns);
IInsertable<T> OffIdentity();
IInsertable<T> OffIdentity(bool isSetOn);

View File

@@ -2,7 +2,7 @@
<package >
<metadata>
<id>SqlSugarCoreNoDrive</id>
<version>5.1.4.172</version>
<version>5.1.4.173-preview05</version>
<authors>sunkaixuan</authors>
<owners>Landa</owners>
<licenseUrl>http://www.apache.org/licenses/LICENSE-2.0.html</licenseUrl>