最近ようやく MySQL 5.1 を使用する機会も増えてきました。本日、ちょっとデータベース名を丸ごと変更したくて「たしか 5.1 で RENAME DATABASE文というのが追加されていたな。G社のIさんがすごく喜んでいたな」と思い出して使ってみたところ、シンタックスエラー。

mysql> rename database mysample1 to mysample2;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near database mysample1 to mysample2 at line 1


 マニュアルには(危険な制限事項はあるけど)使えるって書いてあるし、
http://dev.mysql.com/doc/refman/5.1/ja/rename-database.html
 でも、権限とかではなくシンタックスなエラーになるし、、と悩みました。
 が、、、、なんと英語マニュアルを見ると・・・・
http://dev.mysql.com/doc/refman/5.1/en/rename-database.html
 「5.1.7 で導入されたけど、デンジャラスだったので 5.1.23 で亡くしたよ」とのことでした。「もしこの構文が残っている古いバージョンをおつかいでも、このステートメントは使わないで!キケン!データ消えるかもしれないよ!」とのことです。


 MySQL 5.1 は 5.1.30 でGA版になったので、このステートメントが存在していた 5.1.7〜5.1.23というのはαまたはβ期間中。まぁ一時の気の迷い(?)ということでこういうトライも積極的にやってみる姿勢は楽しくて良いなーと思います。



.