创建临时表
临时表对于保留临时数据非常有用。MySQL 版本 3.23 及更高版本中提供了临时表选项。
会话结束或连接关闭时,临时表将自动销毁。用户也可以删除临时表。
可以在许多连接中同时使用相同的临时表名,因为临时表仅可由创建该表的客户端访问和访问。
可以使用以下类型创建临时表
--->Basic temporary table creation
CREATE TEMPORARY TABLE tempTable1(
id INT NOT NULL AUTO_INCREMENT,
title VARCHAR(100) NOT NULL,
PRIMARY KEY ( id )
);
--->Temporary table creation from select query
CREATE TEMPORARY TABLE tempTable1
SELECT ColumnName1,ColumnName2,... FROM table1;
你可以在构建表时添加索引:
CREATE TEMPORARY TABLE tempTable1
( PRIMARY KEY(ColumnName2) )
SELECT ColumnName1,ColumnName2,... FROM table1;
IF NOT EXISTS
关键字可以如下所述使用,以避免 ‘表已存在’ 错误。但是在这种情况下,如果你正在使用的表名已经存在于当前会话中,则不会创建表。
CREATE TEMPORARY TABLE IF NOT EXISTS tempTable1
SELECT ColumnName1,ColumnName2,... FROM table1;