mysql reopen table,MYSQL临时表关联Can't reopen table

MYSQL临时表关联Can't reopen table,

这是由于

Quotation

使用临时表的诸多限制

引擎类型只能是:memory(heap)、myisam、merge、innodb

不支持mysql cluster

同一个查询语句中只能引用一次! 如 SELECT * FROM TP_TABLE , TP_TABLE AS ALIAS_NAME;  是错误的

同一个用户存储函数中只能引用一次!

show tables 不会显示临时表

不能使用rename重命名临时表。只能使用ALTER TABLE OLD_TP_TABLE_NAME RENAME NEW_TP_TABLE_NAME;

影响使用replication功能

报错实例

#创建临时表1

DROP TEMPORARY TABLE IF EXISTS `temp_info1`;

CREATE TEMPORARY TABLE `temp_info1`(

tid           INT auto_increment -- 自增列

,starttime      VARCHAR(20)        -- 开始时间

, PRIMARY KEY(tid)

);

DROP TEMPORARY TABLE IF EXISTS `temp_info2`;

CREATE TEMPORARY TABLE `temp_info2`(

tid           INT auto_increment -- 自增列

,starttime      VARCHAR(20)        -- 开始时间

, PRIMARY KEY(tid)

);

#debug 以下会报错

/*

SELECT a.starttime

FROM temp_info1 AS a

INNER JOIN temp_info1 AS b ON b.tid=a.tid;

*/

#正确--曲线救国

-- 复制一份

INSERT temp_info2(starttime)

SELECT starttime FROM temp_info1;

-- 执行查询

SELECT a.starttime

FROM temp_info1 AS a

INNER JOIN temp_info2 AS b ON b.tid=a.tid;

#销毁临时表

DROP TEMPORARY TABLE IF EXISTS `temp_info1`;

DROP TEMPORARY TABLE IF EXISTS `temp_info2`;

MYSQL临时表Can't reopen-table 临时表自连接报错 MySql关于临时表cann't reopen

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值