2011-01-26 14 views
3

mysqlのカラムの名前を長い名前に変更する必要があります。なぜmysqlに名前を変更する列コマンドがないのですか?

alter table table_name change old_name new_name column_def

なぜ、

alter table table_name rename old_name new-nameを構文に従っていませんか?

+0

参照整合性はテーブル名に基づいています。 DDLの変更は、QAのために時間と労力が非常に高価になり、DBAがそのように行動する理由についていくつかの洞察を提供するはずです。 –

+0

MySQL ... ISAM ...整合性?ハハ。 Mkay :-)他のベンダーと比較して、MySQLの実装の詳細です(理由は議論の余地がありますが、あまり興味深いわけではありません).SQL-xx DDLの適合性が画像。 –

+0

ないからです。 – Pacerier

答えて

1

名前を変更すると効果的に属性のタイプも変更されるという理由があります。したがって、変更はより正確です。

+2

私は、通常のmysqlスロープの一部として、省略されたカラムタイプのフォームテーブルのメタデータを復元することができます。しかし、炎の戦争が起こらないようにするために私は今終了しなければなりません:) – 9000

+0

@SpyrosPよくmysqlが単に名前変更機能を実装できない理由を説明していません – Pacerier

+0

もちろんまっすぐな説明はありません。それはまさに慣習である。この問題に記述されているように、名前の変更はunix cpのようになります。しかし、mysqlは異なる規則に従うので、alter tableは一般的な構文にかなり近いようです。 – Spyros

関連する問題