1.mysql採用儲存,實現動態建表:
begin
declare tb_name varchar(64);
declare v_name varchar(32) default 'tbl_test_';
set tb_name = concat(v_name,date_format(curdate(),'%y%m%d'));
set @sql_delete = concat('drop table if exists ',tb_name);
prepare sql_delete from @sql_delete;
execute sql_delete;
deallocate prepare sql_delete;
set @sql_create_table = concat(
'create table if not exists ', tb_name,
"( `id` int(11) not null auto_increment,
`name` varchar(255) default null,
`address` varchar(255) default null,
`time` datetime default null on update current_timestamp,
primary key (`id`)
) engine=innodb auto_increment=1 default charset=utf8");
prepare sql_create_table from @sql_create_table;
execute sql_create_table;
deallocate prepare sql_create_table;
end
拼接為乙個變數,採用prepare、execute、deallocate prepare實現動態執行ddl語句建表。
2.mysql臨時表
採用mysql臨時表,可以在儲存過程中處理中間資料,方便實現統計等功能。
語法如下:
drop table if exists tbl_temp_table;
create temporary table if not exists tbl_dcs_temp_table(
id varchar(20) not null,
pile_key varchar(32) not null,
value integer not null
);
平時mysql臨時表幾乎使用不到,建的臨時表也不能用視覺化連線工具檢視表結構。 mysql動態 建表 mysql動態表創設
mysql 動態表建立 mysql 動態表建立 首先要檢測是否存在。使用sql語句 1.show tables like tb bp d case 2.select table name from information schema tables where table schema dbname...
mysql臨時表更新 MySql 臨時表
今天在專案中遇到乙個,當mysql的in語句中資料量很大時,建立乙個臨時表的例子。於是樓主整理了一下關於臨時表的知識,與大家分享一下 首先,臨時表只在當前連線可見,當關閉連線時,mysql會自動刪除表並釋放所有空間。因此在不同的連線中可以建立同名的臨時表,並且操作屬於本連線的臨時表。建立臨時表 cr...
mysql 臨時表 限制 Mysql臨時表
當你建立臨時表的時候,你可以使用temporary關鍵字。如 create temporary table tmp table name varchar 10 not null,passwd char 6 not null 或create temporary table if not exists ...