您好,我正在创建临时表并使用
CREATE TEMPORARY TABLE temp_table_extension_details (
`Id` int NOT NULL,
`model_code` varchar(10),
`model_description` varchar(50),
`eta` varchar(100),
`options` varchar(100),
`order_numbers` varchar(200),
PRIMARY KEY(Id)
);
INSERT INTO temp_table_extension_details (model_code,model_description,eta,options,order_numbers)
VALUES('ABCD','description','eta','abc,bcd,def','123,234,345,456');
我用PHPMyadmin试了一下,结果显示# 1 row affected.
但当我尝试使用
SELECT * FROM temp_table_extension_details
它给我一个错误并说
SELECT * FROM temp_table_extension_details
LIMIT 0, 25
MySQL said: Documentation
# 1146 - Table 'trans.temp_table_extension_details' doesn't exist .
有什么原因吗,我想创建一个临时表,并插入一些数据,稍后我会选择它的所有数据,并删除临时表。
先谢谢你。
2条答案
按热度按时间ukxgm1gy1#
临时表只在连接期间存在。如果您使用一个查询创建临时表,然后在新连接上执行单独的查询,则该临时表已经不存在。
vptzau2j2#
正如Christian所写的,临时表只在连接期间存在。由于使用的是phpMyAdmin,因此可以根据需要创建临时表、使用临时表以及删除临时表,但必须在一条指令中完成,其中包含多个语句,用分号(;)所以在phpMyAdmin中,在SQL选项卡中,在CREATE TEMPORARY TABLE指令之后添加(;)然后SELECT * FROM别名或任何查询然后(;)等等,最后单击“Go”按钮。将执行所有语句,而不会丢失连接。