oracle批量建表:
begin
declare j int;
tbname varchar2(50) DEFAULT 'test';
name varchar2(200);
begin
for j in 1..8000 LOOP
name := 'CREATE TABLE test_'||j||'(id number(20), name varchar2(200), create_time date)';
execute immediate name;
end loop;
commit;
end;
end;
Mysql批量建表:
create procedure create_sql1()
begin
declare i int;
declare cerate_sql varchar(1000);
set i=1;
while i<8000 do
set cerate_sql = concat('CREATE TABLE test.test_', concat(i, '(id decimal(20), name varchar(200), time_my datetime)'));
set @sql = cerate_sql;
PREPARE stmt FROM @sql; -- 预处理动态sql语句
EXECUTE stmt; -- 执行sql语句
deallocate prepare stmt; -- 释放prepare
set i=i+1;
end while;
commit;
end;
call create_sql1();