2013-01-20 32 views
4

不工作我運行此查詢臨時表在phpMyAdmin

CREATE TEMPORARY TABLE usercount SELECT * FROM users 

我得到這個消息

Your SQL query has been executed successfully (Query took 0.1471 sec) 

但是當我嘗試訪問使用

SELECT * FROM usercount 

我新創建的表得到這個錯誤

#1146 - Table 'abc_site.usercount' doesn't exist 

不知道爲什麼,我需要提一下,我已經做了很好的谷歌搜索預先分享。

我的phpMyAdmin的版本是3.5.2.2和MySQL 5.5.27

回答

8

的phpMyAdmin(或者更確切地說,PHP)關閉每個屏幕後的數據庫連接。這樣你的臨時表就消失了。

您可以在PHPMyAdmin的SQL查詢框中放入多個SQL語句;這應該作爲一個塊執行,因此臨時表不會被刪除。

+0

有道理,我應該測試我的代碼,然後 –

1

臨時表是temparar和使用後刪除。例如,在將數據插入數據庫時​​,首先我們可以插入到臨時表中,從而在完成事務時插入到主表中。

EXAMPLE : 
//------------------------------------------ 
CREATE TEMPORARY TABLE TEMP 
(
USERNAME VARCHAR(50) NOT NULL, 
PASSWORD VARCHAR(50) NOT NULL, 
EMAIL varchar(100), 
TYPE_USER INT 
); 
INSERT INTO TEMP VALUES('A','A','A','1'); 
SELECT * FROM TEMP 
//----------------------------------------- 
Show A,A,A,1 
+0

這是行不通的。顯示相同的結果:SELECT * FROM TEMP LIMIT 0,25 MySQL說:文檔 #1146 - 表'test.temp'不存在 –