Add constraints (Updateable)

This commit is contained in:
sunkaixuan 2022-09-02 21:45:38 +08:00
parent 4f57308b34
commit 0e7cd00873
2 changed files with 13 additions and 0 deletions

View File

@ -32,6 +32,7 @@ namespace SqlSugar
}
private string _ExecuteCommand()
{
CheckWhere();
PreToSql();
AutoRemoveDataCache();
Check.Exception(UpdateBuilder.WhereValues.IsNullOrEmpty() && GetPrimaryKeys().IsNullOrEmpty(), "You cannot have no primary key and no conditions");
@ -42,6 +43,14 @@ namespace SqlSugar
return sql;
}
private void CheckWhere()
{
if (UpdateParameterIsNull && UpdateBuilder.WhereValues.IsNullOrEmpty())
{
Check.ExceptionEasy("Update requires conditions", "更新需要条件 Where");
}
}
private void _WhereColumn(string columnName)
{
var columnInfos = columns.Where(it => it.DbColumnName.Equals(columnName, StringComparison.OrdinalIgnoreCase) || it.PropertyName.Equals(columnName, StringComparison.OrdinalIgnoreCase)).ToList();

View File

@ -18,6 +18,10 @@ namespace SqlSugar
public UpdateBuilder UpdateBuilder { get; set; }
public IAdo Ado { get { return Context.Ado; } }
public T[] UpdateObjs { get; set; }
/// <summary>
/// true : by expression update
/// false: by object update
/// </summary>
public bool UpdateParameterIsNull { get; set; }
public bool IsMappingTable { get { return this.Context.MappingTables != null && this.Context.MappingTables.Any(); } }
public bool IsMappingColumns { get { return this.Context.MappingColumns != null && this.Context.MappingColumns.Any(); } }