+ -
当前位置:首页 → 问答吧 → 急!如何用sql语句 循环创建表。

急!如何用sql语句 循环创建表。

时间:2011-10-28

来源:互联网

例如我要创建1000个表。表结构都一样。只是表名不一样。

例如 tb11 tb12 tb13... tb99

作者: aklhafklwg   发布时间: 2011-10-28

dELIMITER $$

USE `aa1`$$

DROP PROCEDURE IF EXISTS `aa`$$

CREATE PROCEDURE `aa`()
BEGIN
DECLARE f INT DEFAULT 1;
WHILE f<=100 DO
SET @a=CONCAT('create table t',f,' (id int,bh varchar(10))');
PREPARE stml FROM @a;
EXECUTE stml;
SET f=f+1;
END WHILE;
END$$

DELIMITER ;

作者: wwwwb   发布时间: 2011-10-28

楼上v5

作者: mkkistudy   发布时间: 2011-10-28

SQL语句无法实现循环,只能通过程序或者存储过程来实现。

如果只是一次性工作,则建议直接用EXCEL的公式手批量生成SQL语句 然后一次性贴到MYSQL的命令行工具中执行即可。

S1 : 创建一个模板表 create table t (id int, col1 int , col2 varchar(10));
S2 : EXCEL中在A1输入 ="create table t"&ROW()&" like t;"
S3: 下拉填充这个A1至A1000
create table t1 like t;
create table t2 like t;
create table t3 like t;
create table t4 like t;
create table t5 like t;
create table t6 like t;
create table t7 like t;
create table t8 like t;
create table t9 like t;
create table t10 like t;

S4: 复制到MYSQL命令行工具一次行执行。

作者: ACMAIN_CHM   发布时间: 2011-10-28

这样的问题,论坛里经常有人问。

作者: zuoxingyu   发布时间: 2011-10-28

3楼的方法值得推荐,有时候我们可以在一些编辑器和工具软件上通过技巧批量生成脚本。
追求的是快速,有效。

作者: wfevgch   发布时间: 2011-10-28

[root@localhost ~]# for i in `seq 1 10`; do echo "create table tb$i(a int);"; done
然后拿语句占到sql客户端里

作者: rucypli   发布时间: 2011-10-28

相关阅读 更多

热门下载

更多