当前位置:首页 > 开发 > 数据库 > 正文

MySql关于临时表cann't reopen的问题

发表于: 2012-11-24   作者:dove19900520   来源:转载   浏览次数:
摘要: 当你创建临时表的时候,你可以使用temporary关键字。如:     create temporary table tmp_table(name varchar(10) not null,passwd char(6) not null); 或      create temporary table if not exis
当你创建临时表的时候,你可以使用temporary关键字。如:
 
  create temporary table tmp_table(name varchar(10) not null,passwd char(6) not null);
     create temporary table if not exists sp_output_tmp engine= memory select …from … where ID=current_id;
   临时表只在当前连接可见,当这个连接关闭的时候,会自动drop。这就意味着你可以在两个不同的连接里使用相同的临时表名,并且相互不会冲突,或者使用 已经存在的表,但不是临时表的表名。(当这个临时表存在的时候,存在的表被隐藏了,如果临时表被drop,存在的表就可见了)。创建临时表你必须有
 
  create temporary table 权限。
 
  下面几点是临时表的限制:
 
  1、临时表只能用在 memory,myisam,merge,或者innodb
 
      2、临时表不支持mysql cluster(簇)
 
  3、在同一个query语句中,你只能查找一次临时表。例如:下面的就不可用
 
  mysql> SELECT * FROM temp_table, temp_table AS t2;  www.2cto.com  
 
  ERROR 1137: Can't reopen table: 'temp_table'  

      mysql bug地址:http://bugs.mysql.com/bug. php?id=10327
 
  如果在一个存储函数里,你用不同的别名查找一个临时表多次,或者在这个存储函数里用不同的语句查找,这个错误都会发生。
 
  4、show tables 语句不会列举临时表
 
  你不能用rename来重命名一个临时表。但是,你可以alter table代替:
 
   mysql>ALTER TABLE orig_name RENAME new_name;
 
 
      临时表用完后要记得drop掉:
 
      DROP TEMPORARY TABLE IF EXISTS sp_output_tmp;

MySql关于临时表cann't reopen的问题

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
昨天管的一台服务器的密码不知道谁给改了,于是把密码给恢复了回来。在关机的过程中,造成mysql坏表
最近在做公司月报表的时候出现了一个很让人为难的问题,查询一个支付的过程,内容如下: 两个表:
今儿突然间被问到关于mysql数据库服务器的监控问题,自己也没有答出来什么东西,就是仅仅知道一个可
有数据表 ts_invite_record ,内容如下: select count(*) as count from ( (SELECT distinct uid F
开始 说临时表和表变量,这是一个古老的话题,我们在网上也找到很多的资料阐述两者的特征,优点与缺
说临时表和表变量,这是一个古老的话题,我们在网上也找到很多的资料阐述两者的特征,优点与缺点。
查看5037端口被谁占用了, 开始--运行--CMD 到命令提示符,输入 netstat -aon|findstr "5037" 输入
问题来源: 前几天用户向我反映了一个问题,有一个金额字段当输入到达百万级时,个位数的精度会丢失
当排序操作、重建索引等大型操作无法在内存中完成时,临时表空间将为排序提供便利。一般情况下临时
运行Floodlight,在Mininet中新建一个拓扑之后,并未添加相关的流表项,但是主机之间却可以相互通信
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号