一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數據庫技術|

服務器之家 - 數據庫 - Mysql - mysql 臨時表 cann't reopen解決方案

mysql 臨時表 cann't reopen解決方案

2019-12-12 16:54MYSQL教程網 Mysql

MySql關于臨時表cann't reopen的問題,本文將提供詳細的解決方案,需要了解的朋友可以參考下

當你創建臨時表的時候,你可以使用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; 
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; 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 水蜜桃一二二区视在线 | 蜜色影院| 久久99视热频国只有精品 | 日本中文字幕永久在线 | 亚洲精品乱码久久久久久蜜桃欧美 | 国产精品免费拍拍拍 | 男人与雌性宠物交啪啪小说 | 欧美洲大黑香蕉在线视频 | 四虎国产精品视频免费看 | 香港三级浴室女警官 | 私人影院在线免费观看 | 日本亚洲欧洲高清有码在线播放 | 亚洲 日本 天堂 国产 在线 | 日韩视频在线精品视频免费观看 | yin娃sao货调教情趣用品店 | 美女gif趴跪式抽搐动态图 | 四虎影视色费永久在线观看 | 大象传媒短视频网站 | 俺去啦最新地址 | 九九热这里只有精品视频免费 | 赤色疑惑 | 91国语自产拍在线观看 | 国产小视频在线免费观看 | 国产精品女同久久免费观看 | 国产18在线 | 九九精品免视看国产成人 | 处女摘花视频 | 国产精品igao视频网网址 | 果冻传媒在线完整免费观 | 天天快乐在线观看 | 国产在线观看a | 国产在线观看精品 | 欧美黑人成人免费全部 | wwwav在线| 日本高清色视频www 日本高清免费观看 | 免费看h片的网站 | 色亚| 久99久热只有精品国产99 | 国产二区视频 | 网友偷自拍原创区 | 美女用手扒自己下部 |