现在想通过调用存储过程生成数据库,数据库的名称是存储过程的参数:如下所示:
create database databasename;
我的本意是想通过databasename这个变量将数据库的名称传过来,但每当执行到该句,就给我生成了一个我叫databasename的数据库,这不是我想要的。比如,databasename=hello123,则给我生成一个名叫hello123的数据库,怎么实现?
create database databasename;
我的本意是想通过databasename这个变量将数据库的名称传过来,但每当执行到该句,就给我生成了一个我叫databasename的数据库,这不是我想要的。比如,databasename=hello123,则给我生成一个名叫hello123的数据库,怎么实现?
prepare dd from @ee;
execute dd
DROP PROCEDURE IF EXISTS p_createDatabase $$CREATE PROCEDURE p_createDatabase(databaseName VARCHAR(64))
BEGIN
SET @cmd = CONCAT('CREATE DATABASE `',databaseName,'`');
PREPARE stmt FROM @cmd;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
END$$
DELIMITER ;
CHANGE MASTER
CHECKSUM {TABLE | TABLES}
{CREATE | DROP} DATABASE
{CREATE | RENAME | DROP} USER
FLUSH {TABLE | TABLES | TABLES WITH READ LOCK | HOSTS | PRIVILEGES
| LOGS | STATUS | MASTER | SLAVE | DES_KEY_FILE | USER_RESOURCES}
GRANT
REVOKE
KILL
LOAD INDEX INTO CACHE
RESET {MASTER | SLAVE | QUERY CACHE}
SHOW BINLOG EVENTS
SHOW CREATE {PROCEDURE | FUNCTION | EVENT | TABLE | VIEW}
SHOW {AUTHORS | CONTRIBUTORS | WARNINGS | ERRORS}
SHOW {MASTER | BINARY} LOGS
SHOW {MASTER | SLAVE} STATUS
SLAVE {START | STOP}
INSTALL PLUGIN
UNINSTALL PLUGIN