mirror of
https://github.com/HeidiSQL/HeidiSQL.git
synced 2025-08-16 11:42:12 +08:00
Fix issue #694: Column comment silently deleted after renaming
This commit is contained in:
@ -3967,7 +3967,7 @@ procedure TMDIChild.ListColumnsNewText(Sender: TBaseVirtualTree; Node:
|
|||||||
PVirtualNode; Column: TColumnIndex; NewText: WideString);
|
PVirtualNode; Column: TColumnIndex; NewText: WideString);
|
||||||
var
|
var
|
||||||
def : TDataSet;
|
def : TDataSet;
|
||||||
sql_update, sql_null, sql_default, sql_extra, DefaultValue : String;
|
sql_update, sql_null, sql_default, sql_extra, sql_comment, DefaultValue : String;
|
||||||
NodeData : PVTreeData;
|
NodeData : PVTreeData;
|
||||||
begin
|
begin
|
||||||
// Try to rename, on any error abort and don't rename ListItem
|
// Try to rename, on any error abort and don't rename ListItem
|
||||||
@ -3978,7 +3978,7 @@ begin
|
|||||||
NodeData := ListColumns.GetNodeData(Node);
|
NodeData := ListColumns.GetNodeData(Node);
|
||||||
|
|
||||||
// Fetch column definition
|
// Fetch column definition
|
||||||
def := GetResults( 'SHOW COLUMNS FROM ' + mask(SelectedTable) + ' LIKE ' + esc(NodeData.Captions[0]), False, False );
|
def := GetResults( 'SHOW FULL COLUMNS FROM ' + mask(SelectedTable) + ' LIKE ' + esc(NodeData.Captions[0]), False, False );
|
||||||
|
|
||||||
// Check NOT NULL
|
// Check NOT NULL
|
||||||
sql_null := 'NULL ';
|
sql_null := 'NULL ';
|
||||||
@ -3998,7 +3998,12 @@ begin
|
|||||||
// Check extra options (auto_increment)
|
// Check extra options (auto_increment)
|
||||||
sql_extra := '';
|
sql_extra := '';
|
||||||
if def.FieldByName('Extra').AsString <> '' then
|
if def.FieldByName('Extra').AsString <> '' then
|
||||||
sql_default := ' '+UpperCase(def.FieldByName('Extra').AsString) + ' ';
|
sql_extra := ' '+UpperCase(def.FieldByName('Extra').AsString);
|
||||||
|
|
||||||
|
// Comment
|
||||||
|
sql_comment := '';
|
||||||
|
if def.FieldByName('Comment').AsWideString <> '' then
|
||||||
|
sql_comment := ' COMMENT '+esc(def.FieldByName('Comment').AsWideString);
|
||||||
|
|
||||||
// Concat column definition
|
// Concat column definition
|
||||||
sql_update := 'ALTER TABLE ' + mask(SelectedTable) +
|
sql_update := 'ALTER TABLE ' + mask(SelectedTable) +
|
||||||
@ -4007,7 +4012,8 @@ begin
|
|||||||
def.FieldByName('Type').AsString + ' ' +
|
def.FieldByName('Type').AsString + ' ' +
|
||||||
sql_null +
|
sql_null +
|
||||||
sql_default +
|
sql_default +
|
||||||
sql_extra;
|
sql_extra +
|
||||||
|
sql_comment;
|
||||||
|
|
||||||
// Cleanup
|
// Cleanup
|
||||||
def.Close;
|
def.Close;
|
||||||
|
@ -897,7 +897,7 @@ object MainForm: TMainForm
|
|||||||
Enabled = False
|
Enabled = False
|
||||||
Hint = 'Edit field properties'
|
Hint = 'Edit field properties'
|
||||||
ImageIndex = 93
|
ImageIndex = 93
|
||||||
ShortCut = 13
|
ShortCut = 32781
|
||||||
OnExecute = actEditFieldExecute
|
OnExecute = actEditFieldExecute
|
||||||
end
|
end
|
||||||
object actCreateField: TAction
|
object actCreateField: TAction
|
||||||
|
Reference in New Issue
Block a user