MySQL数据库中临时表的创建

1、临时表再断开于mysql的连接后系统会自动删除临时表中的数据,但是这只限于用下面语句建立的表:
 1)定义字段
  CREATE TEMPORARY TABLE tmp_table ( 
      name VARCHAR(10) NOT NULL, 
      value INTEGER NOT NULL 
  )
 2)直接将查询结果导入临时表
  CREATE TEMPORARY TABLE tmp_table SELECT * FROM table_name

2、另外mysql也允许你在内存中直接创建临时表,因为是在内存中所有速度会很快,语法如下:
  CREATE TEMPORARY TABLE tmp_table ( 
     name VARCHAR(10) NOT NULL, 
     value INTEGER NOT NULL 
  ) TYPE = HEAP 

3、从上面的分析可以看出临时表的数据是会被清空的,你断开了连接就会被自动清空,但是你程序中不可能每发行一次sql就连接一次数据库吧(如果是这样的话,那就会出现你担心的问题,如果不是就没有问题),因为只有断开数据库连接才会被清空数据,在一个数据库连接里面发行多次sql的话系统是不会自动清空临时表数据的。

猜你喜欢

转载自shuizhongyue.iteye.com/blog/2199404