· 8 years ago · Jan 08, 2018, 03:28 AM
1DROP PROCEDURE IF EXISTS createLogTable;
2DELIMITER //
3CREATE PROCEDURE createLogTable(IN tblName VARCHAR(500), IN old_table_name VARCHAR(500))
4BEGIN
5 SET @tableName = tblName;
6 SET @oldName = old_table_name;
7
8 SET @q = CONCAT('CREATE TABLE IF NOT EXISTS `' , @tableName, ' LIKE ', @oldName);
9
10 PREPARE stmt FROM @q;
11 EXECUTE stmt;
12 DEALLOCATE PREPARE stmt;
13 -- and you're done. Table is created.
14 -- process it here if you like (INSERT etc)
15END //
16DROP TABLE EXAMPLETABLE;
17CALL createLogTable('exampleTable', ACT)