create procedure sp_create_tab()
begin
set @sql_t = concat("create table ...");
prepare sql_t from @sql_t;
execute sql_t;
end
需要動態傳遞引數(表名,欄位名,屬性)
這里存盤程序該怎么寫,謝謝
uj5u.com熱心網友回復:
DROP PROCEDURE if EXISTS proc_create_table;CREATE PROCEDURE proc_create_table(IN table_name VARCHAR(32))
BEGIN
DECLARE tblname VARCHAR(32);
DECLARE sql1 VARCHAR(1000);
SET tblname = CONCAT(table_name);
set @sql1 = CONCAT("CREATE TABLE `" ,tblname, "` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(255) DEFAULT NULL, `password` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8; ");
# select sql1;
PREPARE STMT from @sql1;
EXECUTE STMT;
DEALLOCATE PREPARE STMT;
END;
主要問題在于,欄位的創建
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/68509.html
標籤:MySQL
上一篇:主鍵唯一性,添加或替換記錄
