asif
用mysql的儲存過程建立100張表
#mysql
delimiter $$
create
procedure
`createtables`()
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_convenient_'
;
set
sql_text=
''
;
while i<100 do
if i<10
then
set
table_name=concat(table_pre,
'0'
,i);
else
set
table_name=concat(table_pre,i);
end
if;
set
sql_text=concat(
'create table '
, table_name,
'(
user_id bigint(20) not null default 0 comment \'使用者id\',
operate_time timestamp not null default current_timestamp on update current_timestamp comment \'資料更新時間\',
primary key (user_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
$$
delimiter ;
#
drop
procedure
createtables; 刪除儲存過程
#call createtables(); 執行儲存過程
#show
procedure
status; 列出當前的儲存過程
#show
create
procedure
createtables 顯示儲存過程的具體內容
MYSQL批量建表儲存過程
分表比較多的情況,如何批量建立,可通過儲存過程實現 建立乙個儲存過程 紅色表結構,藍色為表名及表數量 delimiter create procedure sp create tab begin set str id int 11 not null auto increment comment 自增...
原!mysql5 6 儲存過程 批量建表
由於業務需求,需要按天分表,因此寫了個儲存過程,根據時間生成表。根據createtime 的時間,以及 while迴圈的變數設定範圍,生成該指定日期及之後的多張表。begin declare i int 11 declare createtime varchar 32 set i 0 set cre...
MySQL 匯出建表建儲存過程語句 備份
版本一 匯出 只導資料結構 areskris areskris acer mysqldump u root p d add drop table 資料庫名字 匯出的檔名 匯出 包括資料 areskris areskris acer mysqldump u root p add drop table ...