sql >> データベース >  >> RDS >> Mysql

mysqlで列の名前を変更するのになぜこれほど時間がかかるのですか?

    ブローバイブローを提供することはできません(機能リクエスト#34354 おそらくMySQL5.0にバックポートされないことを除けば、役に立ちますが、余分な時間はALTER ... CHANGEという事実によるものです。 列のタイプ(および存在する場合は列属性)を変更する可能性があります。これにより、列に格納されている値の変換やその他のチェックが必要になります。 MySQL 5.0には、新しいタイプと属性が古いものと同じである場合の最適化は含まれていません。 ALTERのドキュメントから MySQL 5.0の場合:

    5.1では、 ALTER いくつかの追加の最適化があります:



    1. MariaDBでのTIMEDIFF()のしくみ

    2. クラウドベンダーの詳細:MicrosoftAzure上のPostgreSQL

    3. MariaDB FLOOR()とTRUNCATE()

    4. FIND_IN_SET()とIN()