Mysql存储过程_一次性建立多张表

BEGIN


DECLARE i INT;
DECLARE table_name VARCHAR(20); 
DECLARE table_pre VARCHAR(20); 
DECLARE sql_text VARCHAR(2000); 
SET i=0;
SET table_name='';
SET table_pre='user_info_';
SET sql_text='';



while i<100 do

    #IF i<10 THEN SET table_name=CONCAT(table_pre,i);
    #ELSE SET table_name=CONCAT(table_pre,i);
    #END IF;
SET table_name=CONCAT(table_pre,i);

SET sql_text=CONCAT('CREATE TABLE ', table_name, '(
 id INT(11) NOT NULL COMMENT \'用户id\' AUTO_INCREMENT,
 userName VARCHAR(32)  COMMENT \'用户名\',
 service INT(11) DEFAULT 0 COMMENT \'服务\',
 passportUserName VARCHAR(32)  COMMENT \'y\',
 email  VARCHAR(32) COMMENT \'email\',
 phone  VARCHAR(15) COMMENT \'电话\',
         trueName  VARCHAR(12) COMMENT \'真实姓名\',
         idNumber  VARCHAR(18) COMMENT \'身份证\',
         nickName  VARCHAR(32) COMMENT \'昵称\',
         maxMsgId  INT(18) COMMENT \'消息id\',
         gameIds  VARCHAR(32)DEFAULT null COMMENT \'昵称?\',
         crmVip  INT(11) COMMENT \'消息id\',
         status  INT(11) COMMENT \'状态\',
         updateTime  Date COMMENT \'更新时间\',
bigHead  VARCHAR(200)DEFAULT null COMMENT \'bigHead\',
smallHead  VARCHAR(200)DEFAULT null COMMENT \'smallHead\',
 PRIMARY KEY (id)  
) ENGINE=INNODB DEFAULT CHARSET=utf8' );

SELECT sql_text; 
SET @sql_text=sql_text;
PREPARE stmt FROM @sql_text;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;  
SET i=i+1;



end while;

END
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值