|
|
@ -113,7 +113,9 @@ namespace Apewer.Source |
|
|
columns = lower.ToArray(); |
|
|
columns = lower.ToArray(); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// 增加列。
|
|
|
// 找出新列。
|
|
|
|
|
|
var newColumns = new List<ColumnAttribute>(); |
|
|
|
|
|
var newPrimaryKey = new List<PrimaryKey>(); |
|
|
foreach (var column in structure.Columns) |
|
|
foreach (var column in structure.Columns) |
|
|
{ |
|
|
{ |
|
|
// 检查 Independent 特性。
|
|
|
// 检查 Independent 特性。
|
|
|
@ -124,11 +126,19 @@ namespace Apewer.Source |
|
|
if (columns.Contains(lower)) continue; |
|
|
if (columns.Contains(lower)) continue; |
|
|
|
|
|
|
|
|
var type = Declaration(column); |
|
|
var type = Declaration(column); |
|
|
if (string.IsNullOrEmpty(type)) return TextUtility.Merge("类型 ", column.Type.ToString(), " 不受支持。"); |
|
|
if (string.IsNullOrEmpty(type)) return $"类型 {column.Type} 不受支持。"; |
|
|
|
|
|
|
|
|
|
|
|
newColumns.Add(column); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
var sql = TextUtility.Merge("alter table [", table, "] add ", type, "; "); |
|
|
// 执行:添加列。
|
|
|
|
|
|
if (newColumns.IsEmpty()) return TextUtility.Empty; |
|
|
|
|
|
foreach (var column in newColumns) |
|
|
|
|
|
{ |
|
|
|
|
|
var type = Declaration(column); |
|
|
|
|
|
var sql = $"alter table [{table}] add {type}; "; |
|
|
var execute = Execute(sql, null, false); |
|
|
var execute = Execute(sql, null, false); |
|
|
if (execute.Success == false) return execute.Message; |
|
|
if (!execute.Success) return execute.Message; |
|
|
} |
|
|
} |
|
|
return TextUtility.Empty; |
|
|
return TextUtility.Empty; |
|
|
} |
|
|
} |
|
|
|