Reputation: 17566
Hi I am creating a temp table and insert a record using
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');
I tried this using PHPMyadmin and it says # 1 row affected.
but when i try to select the data using
SELECT * FROM temp_table_extension_details
It gives me an error and says
SELECT * FROM temp_table_extension_details
LIMIT 0, 25
MySQL said: Documentation
#1146 - Table 'trans.temp_table_extension_details' doesn't exist .
Is there any reson for this , i want to create a temp table and insert some data , later i will select all the data from it and delete the temp table .
Thanks in advance .
Upvotes: 12
Views: 14811
Reputation: 11
As Christian wrote, temporary tables only exist during the connection. Since you are using phpMyAdmin you can do what you want that is CREATE a temporary table, work with it, and delete the table but you have to do it in one instruction with multiple statements separated by a semicolon (;) So in phpMyAdmin, in SQL TAB, after your CREATE TEMPORARY TABLE instruction add (;) then SELECT * FROM alias or any query then (;) and so on and finally click on Go button. All the statements will be executed without losing the connection.
Upvotes: 0
Reputation: 18318
Temporary tables only exist during the connection. If you create it with one query and then do a separate query on a new connection it is already gone.
Upvotes: 22