2017-04-03 49 views
0

如何使用當前日期或時間戳作爲命名約定在我的模式中創建表?MySQL表創建約定

CREATE Table CURRENT_DATE|TIMESTAMP; 
REPLACE CURRENT_DATE|TIMESTAMP 
SELECT * 
FROM other.othertable; 

回答

0
I managed to solve it, for those interested. 

SET @YYYY_MM_DD_HH_MM_SS=date_format((SELECT NOW() FROM DUAL),'%Y-%m-%d %h:%m:%s'); 
SET @c = CONCAT('CREATE TABLE `new`.`',@YYYY_MM_DD_HH_MM_SS, '` LIKE `old`.`oldtable`'); 
PREPARE stmt from @c; 
EXECUTE stmt; 
DEALLOCATE PREPARE stmt; 

SET @u = concat('REPLACE `new`.`',@YYYY_MM_DD_HH_MM_SS, '` SELECT * FROM `old`.`oldtable`'); 
PREPARE stmt2 from @u; 
EXECUTE stmt2; 
DEALLOCATE PREPARE stmt2;