我想创建一个名称取自用户定义变量的表。下面的代码似乎并不工作(我得到一个MYSQL语法错误附近CREATE TABLE线)在MySQL存储过程中使用用户定义的变量设置表名
在此先感谢您的帮助
SET @ratingsNewTableName = CONCAT('ratings_', 'anotherString');
CREATE TABLE IF NOT EXISTS @ratingsNewTableName (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`user_id` INT(11) NOT NULL,
`movie_id` INT(11) NOT NULL,
`rate` DOUBLE NOT NULL,
`date` DATE NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
这可能很明显,但只要确保首先定义'@ tableName'即可。 :-) – Mike 2010-07-09 09:08:13