データベース内にINパラメータを使用してプロシージャを作成しました(MySql-> Routines-> Create Procedure)。私はそれを使って新しいデータベースを作成しています。プロシージャを呼び出して引数を渡すと、新しいデータベースが作成されますが、新しいデータベースの名前は、プロシージャで使用する変数の名前であり、パラメータとして渡す名前ではありません。
CREATE PROCEDURE dbCreate(IN dbName VARCHAR(255))
始める
CREATE DATABASE IF NOT EXISTS dbName COLLATE utf8_bin; CREATE TABLE IF NOT EXISTS dbName.City( . . . );
プロシージャdbCreateを呼び出すと、
old_databaseを使用します。
CALL old_database.dbCreate('FRANCE');
MySqlは、dbNameと呼ばれる新しいデータベースを生成します。