I'm creating a procedure to backup a table in mysql.
My Code is:
DELIMITER $$
CREATE PROCEDURE `backup_table`(current_name VARCHAR(50), backup_name VARCHAR(50))
BEGIN
CREATE TABLE `@backup_name` LIKE `@current_name`;
INSERT INTO `@backup_name` SELECT * FROM `@current_name`;
END $$
DELIMITER;
CALL backup_table('users', 'users_bak');
Procedure created successfully but when I'm trying to call that procedure with my table names as parameter, it throws error:
Query : call backup_table('users', 'users_bak')
Error Code : 1146
Table 'database.@current_name' doesn't exist
I've used procedure without @ sign also but not worked.
So, tell me, how to use arguments variable in query as table name. Please help me guys!!!!