19

私のデータベース名は(小文字)SPMに変更したいのですが。spm

使ってみました

RENAME DATABASE SPM TO spm;

、しかし、次のエラーメッセージが表示されます。

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 SPM to spm' at line 1

私のサーバーバージョン:5.0.45

4

6 に答える 6

29

それを行うためのデータベースコマンドはありません。基本的にはデータベースの外部で行う必要があります。以下は、考えられる解決策の概要を示すいくつかの参考資料です。この質問ではかなり良い答えが返ってきました

これはおそらくあなたの場合のように見えるはずです

mysqladmin create spm
mysqldump SPM | mysql spm

すべてが正常であることを確認したら、元のデータベースを削除できます。

drop database SPM

参照 データベース1の名前変更/データベース2の名前変更

[「RENAMEDATABASE」コマンドに関する注意:このステートメントはMySQL 5.1.7で追加されましたが、危険であることが判明したため、MySQL5.1.23で削除されました。]

于 2009-11-10T15:25:35.307 に答える
3
RENAME {DATABASE | SCHEMA} db_name TO new_db_name;

このステートメントはMySQL5.1.7で追加されましたが、危険であることが判明し、MySQL5.1.23で削除されました。これは、5.1より前のデータベースをアップグレードして、データベース名をデータベースディレクトリ名にマッピングするために5.1で実装されたエンコーディングを使用できるようにすることを目的としていました。ただし、このステートメントを使用すると、データベースの内容が失われる可能性があるため、削除されました。RENAME DATABASEそれが存在する以前のバージョンでは使用しないでください。

新しいエンコーディングでデータベース名をアップグレードするタスクを実行するには、ALTER DATABASE db_name UPGRADE DATA DIRECTORY NAME代わりにを使用します。

于 2012-04-26T07:11:54.037 に答える
1

mysql_dumpを使用して、古いスキーマのデータベースコンテンツをダンプし(SQL出力を生成し、すべてのオブジェクトCREATEステートメントを含めることができます)、新しいスキーマに切り替えて、そのスクリプトを実行します。mysql> . dump.sql

大規模なデータベースの場合、これにはしばらく時間がかかる場合がありますが、これを行うのが最も安全な方法です(変換プロセスの進行中は、データベースを使用するすべてのアプリケーションを一時停止してください)。

すべてが機能したことを確認したら、古いスキーマを削除します。

于 2009-11-10T15:26:46.413 に答える
0

これは次のRENAME DATABASEステートメントで行われます。

RENAME DATABASE old_db_name TO new_db_name;

このステートメントはMySQL5.1.7で追加されましたが、危険であることが判明し、MySQL5.1.23で削除されました。

于 2009-11-10T15:09:22.233 に答える
0

Mysqlユーザーインターフェイスを使用してデータベース名を変更できます

ステップ1:まず、localhost / phpmyadmin /に移動して、データベースをクリックします

ステップ2:[操作]タブをクリックします

ステップ3:(データベースの名前を変更する)テキストフィールドに新しいデータベース名を入力します

ステップ4:GoButttonをクリックします

于 2014-06-03T11:42:41.710 に答える
-1

renamedatabaseコマンドを使用します。

また、mysqlサーバーを停止して、dbデータを含むフォルダーの名前を任意の名前に変更することもできます。次に、サーバーを起動して付与を確認します。付与には、古いデータベース名への参照が含まれている可能性があります。

于 2009-11-10T15:09:32.813 に答える