Merge pull request #848 from yaoguoba/SqlSugar5

Support Unique Index
This commit is contained in:
sunkaixuan
2020-11-02 17:50:35 +08:00
committed by GitHub
21 changed files with 68 additions and 60 deletions

View File

@@ -302,9 +302,9 @@ namespace SqlSugar
this.Context.Ado.ExecuteCommand(sql);
return true;
}
public virtual bool CreateIndex(string tableName, string[] columnNames)
public virtual bool CreateIndex(string tableName, string[] columnNames, bool isUnique=false)
{
string sql = string.Format(CreateIndexSql,tableName,string.Join(",",columnNames), string.Join("_", columnNames));
string sql = string.Format(CreateIndexSql,tableName,string.Join(",",columnNames), string.Join("_", columnNames), isUnique ? "UNIQUE" : "");
this.Context.Ado.ExecuteCommand(sql);
return true;
}

View File

@@ -193,6 +193,7 @@ namespace SqlSugar
column.NoSerialize = sugarColumn.NoSerialize;
column.DefaultValue = sugarColumn.DefaultValue;
column.IndexGroupNameList = sugarColumn.IndexGroupNameList;
column.UIndexGroupNameList = sugarColumn.UIndexGroupNameList;
column.IsOnlyIgnoreUpdate = sugarColumn.IsOnlyIgnoreUpdate;
column.IsArray = sugarColumn.IsArray;
}

View File

@@ -33,6 +33,7 @@ namespace SqlSugar
public bool IsJson { get; set; }
public bool NoSerialize { get; set; }
public string[] IndexGroupNameList { get; set; }
public string[] UIndexGroupNameList { get; set; }
public bool IsArray { get; set; }
}
}

View File

@@ -171,6 +171,8 @@ namespace SqlSugar
set { _IndexGroupNameList = value; }
}
public string[] UIndexGroupNameList { get; set; }
private bool _IsArray;
public bool IsArray
{

View File

@@ -28,7 +28,7 @@ namespace SqlSugar
#region DDL
bool AddDefaultValue(string tableName,string columnName,string defaultValue);
bool CreateIndex(string tableName, string [] columnNames);
bool CreateIndex(string tableName, string [] columnNames, bool isUnique=false);
bool DropTable(string tableName);
bool TruncateTable(string tableName);
bool TruncateTable<T>();

View File

@@ -62,7 +62,7 @@ namespace SqlSugar
{
get
{
return "CREATE INDEX Index_{0}_{2} ON {0}({1})";
return "CREATE {3} INDEX Index_{0}_{2} ON {0}({1})";
}
}
protected override string AddDefaultValueSql
@@ -271,9 +271,9 @@ namespace SqlSugar
}
return base.AddColumn(tableName, columnInfo);
}
public override bool CreateIndex(string tableName, string[] columnNames)
public override bool CreateIndex(string tableName, string[] columnNames, bool isUnique = false)
{
string sql = string.Format(CreateIndexSql, tableName, string.Join(",", columnNames), string.Join("_", columnNames.Select(it => (it + "abc").Substring(0, 3))));
string sql = string.Format(CreateIndexSql, tableName, string.Join(",", columnNames), string.Join("_", columnNames.Select(it => (it + "abc").Substring(0, 3))), isUnique ? "UNIQUE" : "");
this.Context.Ado.ExecuteCommand(sql);
return true;
}

View File

@@ -250,7 +250,7 @@ namespace SqlSugar
{
get
{
return "CREATE INDEX Index_{0}_{2} ON {0} ({1})";
return "CREATE {3} INDEX Index_{0}_{2} ON {0} ({1})";
}
}

View File

@@ -62,7 +62,7 @@ namespace SqlSugar
{
get
{
return "CREATE INDEX Index_{0}_{2} ON {0}({1})";
return "CREATE {3} INDEX Index_{0}_{2} ON {0}({1})";
}
}
protected override string AddDefaultValueSql
@@ -271,9 +271,9 @@ namespace SqlSugar
}
return base.AddColumn(tableName,columnInfo);
}
public override bool CreateIndex(string tableName, string[] columnNames)
public override bool CreateIndex(string tableName, string[] columnNames, bool isUnique=false)
{
string sql = string.Format(CreateIndexSql, tableName, string.Join(",", columnNames), string.Join("_", columnNames.Select(it=>(it+"abc").Substring(0,3))));
string sql = string.Format(CreateIndexSql, tableName, string.Join(",", columnNames), string.Join("_", columnNames.Select(it=>(it+"abc").Substring(0,3))), isUnique ? "UNIQUE" : "");
this.Context.Ado.ExecuteCommand(sql);
return true;
}

View File

@@ -178,7 +178,7 @@ namespace SqlSugar
{
get
{
return "CREATE INDEX Index_{0}_{2} ON {0} ({1})";
return "CREATE {3} INDEX Index_{0}_{2} ON {0} ({1})";
}
}
protected override string AddDefaultValueSql

View File

@@ -249,7 +249,7 @@ namespace SqlSugar
{
get
{
return "CREATE NONCLUSTERED INDEX Index_{0}_{2} ON {0}({1})";
return "CREATE {3} NONCLUSTERED INDEX Index_{0}_{2} ON {0}({1})";
}
}
protected override string AddDefaultValueSql

View File

@@ -302,9 +302,9 @@ namespace SqlSugar
this.Context.Ado.ExecuteCommand(sql);
return true;
}
public virtual bool CreateIndex(string tableName, string[] columnNames)
public virtual bool CreateIndex(string tableName, string[] columnNames, bool isUnique = false)
{
string sql = string.Format(CreateIndexSql,tableName,string.Join(",",columnNames), string.Join("_", columnNames));
string sql = string.Format(CreateIndexSql,tableName,string.Join(",",columnNames), string.Join("_", columnNames), isUnique ? "UNIQUE" : "");
this.Context.Ado.ExecuteCommand(sql);
return true;
}

View File

@@ -193,6 +193,7 @@ namespace SqlSugar
column.NoSerialize = sugarColumn.NoSerialize;
column.DefaultValue = sugarColumn.DefaultValue;
column.IndexGroupNameList = sugarColumn.IndexGroupNameList;
column.UIndexGroupNameList = sugarColumn.UIndexGroupNameList;
column.IsOnlyIgnoreUpdate = sugarColumn.IsOnlyIgnoreUpdate;
column.IsArray = sugarColumn.IsArray;
}

View File

@@ -33,6 +33,7 @@ namespace SqlSugar
public bool IsJson { get; set; }
public bool NoSerialize { get; set; }
public string[] IndexGroupNameList { get; set; }
public string[] UIndexGroupNameList { get; set; }
public bool IsArray { get; set; }
}
}

View File

@@ -171,6 +171,8 @@ namespace SqlSugar
set { _IndexGroupNameList = value; }
}
public string[] UIndexGroupNameList { get; set; }
private bool _IsArray;
public bool IsArray
{

View File

@@ -28,7 +28,7 @@ namespace SqlSugar
#region DDL
bool AddDefaultValue(string tableName,string columnName,string defaultValue);
bool CreateIndex(string tableName, string [] columnNames);
bool CreateIndex(string tableName, string [] columnNames, bool isUnique=false);
bool DropTable(string tableName);
bool TruncateTable(string tableName);
bool TruncateTable<T>();

View File

@@ -62,7 +62,7 @@ namespace SqlSugar
{
get
{
return "CREATE INDEX Index_{0}_{2} ON {0}({1})";
return "CREATE {3} INDEX Index_{0}_{2} ON {0}({1})";
}
}
protected override string AddDefaultValueSql
@@ -271,9 +271,9 @@ namespace SqlSugar
}
return base.AddColumn(tableName, columnInfo);
}
public override bool CreateIndex(string tableName, string[] columnNames)
public override bool CreateIndex(string tableName, string[] columnNames, bool isUnique = false)
{
string sql = string.Format(CreateIndexSql, tableName, string.Join(",", columnNames), string.Join("_", columnNames.Select(it => (it + "abc").Substring(0, 3))));
string sql = string.Format(CreateIndexSql, tableName, string.Join(",", columnNames), string.Join("_", columnNames.Select(it => (it + "abc").Substring(0, 3))), isUnique ? "UNIQUE" : "");
this.Context.Ado.ExecuteCommand(sql);
return true;
}

View File

@@ -178,7 +178,7 @@ namespace SqlSugar
{
get
{
return "CREATE INDEX Index_{0}_{2} ON {0} ({1})";
return "CREATE {3} INDEX Index_{0}_{2} ON {0} ({1})";
}
}
protected override string AddDefaultValueSql

View File

@@ -250,7 +250,7 @@ namespace SqlSugar
{
get
{
return "CREATE INDEX Index_{0}_{2} ON {0} ({1})";
return "CREATE {3} INDEX Index_{0}_{2} ON {0} ({1})";
}
}

View File

@@ -62,7 +62,7 @@ namespace SqlSugar
{
get
{
return "CREATE INDEX Index_{0}_{2} ON {0}({1})";
return "CREATE {3} INDEX Index_{0}_{2} ON {0}({1})";
}
}
protected override string AddDefaultValueSql
@@ -271,9 +271,9 @@ namespace SqlSugar
}
return base.AddColumn(tableName,columnInfo);
}
public override bool CreateIndex(string tableName, string[] columnNames)
public override bool CreateIndex(string tableName, string[] columnNames, bool isUnique=false)
{
string sql = string.Format(CreateIndexSql, tableName, string.Join(",", columnNames), string.Join("_", columnNames.Select(it=>(it+"abc").Substring(0,3))));
string sql = string.Format(CreateIndexSql, tableName, string.Join(",", columnNames), string.Join("_", columnNames.Select(it=>(it+"abc").Substring(0,3))), isUnique ? "UNIQUE" : "");
this.Context.Ado.ExecuteCommand(sql);
return true;
}

View File

@@ -178,7 +178,7 @@ namespace SqlSugar
{
get
{
return "CREATE INDEX Index_{0}_{2} ON {0} ({1})";
return "CREATE {3} INDEX Index_{0}_{2} ON {0} ({1})";
}
}
protected override string AddDefaultValueSql

View File

@@ -249,7 +249,7 @@ namespace SqlSugar
{
get
{
return "CREATE NONCLUSTERED INDEX Index_{0}_{2} ON {0}({1})";
return "CREATE {3} NONCLUSTERED INDEX Index_{0}_{2} ON {0}({1})";
}
}
protected override string AddDefaultValueSql