mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-05-03 04:13:48 +08:00
Synchronization code
This commit is contained in:
parent
e8d8d283b2
commit
65131a80a5
@ -267,6 +267,33 @@ namespace SqlSugar
|
||||
#endregion
|
||||
|
||||
#region Methods
|
||||
public override bool UpdateColumn(string tableName, DbColumnInfo column)
|
||||
{
|
||||
var oldColumn = this.Context.DbMaintenance.GetColumnInfosByTableName(tableName, false)
|
||||
.FirstOrDefault(it => it.DbColumnName.EqualCase(column.DbColumnName));
|
||||
if (oldColumn != null)
|
||||
{
|
||||
if (oldColumn.IsNullable == column.IsNullable)
|
||||
{
|
||||
var sql = GetUpdateColumnSqlOnlyType(tableName, column);
|
||||
this.Context.Ado.ExecuteCommand(sql);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return base.UpdateColumn(tableName, column);
|
||||
}
|
||||
protected virtual string GetUpdateColumnSqlOnlyType(string tableName, DbColumnInfo columnInfo)
|
||||
{
|
||||
string columnName = this.SqlBuilder.GetTranslationColumnName(columnInfo.DbColumnName);
|
||||
tableName = this.SqlBuilder.GetTranslationTableName(tableName);
|
||||
string dataSize = GetSize(columnInfo);
|
||||
string dataType = columnInfo.DataType;
|
||||
string nullType = "";
|
||||
string primaryKey = null;
|
||||
string identity = null;
|
||||
string result = string.Format(this.AlterColumnToTableSql, tableName, columnName, dataType, dataSize, nullType, primaryKey, identity);
|
||||
return result;
|
||||
}
|
||||
public override List<string> GetDbTypes()
|
||||
{
|
||||
var result = this.Context.Ado.SqlQuery<string>(@"SELECT DISTINCT DATA_TYPE
|
||||
|
@ -245,7 +245,7 @@ namespace SqlSugar
|
||||
{
|
||||
get
|
||||
{
|
||||
return "";
|
||||
return " NULL ";
|
||||
}
|
||||
}
|
||||
protected override string CreateTableNotNull
|
||||
|
Loading…
Reference in New Issue
Block a user