目标
声明一个“全局”变量,用于存储存储过程范围内的表名称。
场景
我正在设计一个简单的存储过程,其中包含IF
语句,并且我需要在代码的许多地方使用表的名称。
问题
我真的不知道该怎么做(又名“我不知道语法”)。
我已经做了什么
在一些测试中,我尝试了以下代码:
[...]
BEGIN
DECLARE TableName = "Users";
[...]
INSERT INTO TableName ([...]) VALUES ([...]);
[...]
END
但是我在 INSERT INTO [...]
行周围收到了(1064) SQL 语法错误。
那么,有人可以帮我解决这个问题吗?
最佳答案
1,DECLARE var_name [, var_name] ... type [DEFAULT value]
[...]
BEGIN
modify //DECLARE TableName = "Users";
DECLARE TableName CHAR(20) DEFAULT 'Users';
[...]
INSERT INTO TableName ([...]) VALUES ([...]);
[...]
END
2、更多关于变量声明请引用mysql
http://dev.mysql.com/doc/refman/5.5/en/declare-local-variable.html
关于mysql - 如何使用 MySQL 在变量中声明表名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18972292/