यह इस बात पर निर्भर करता है कि आप किस इंजन को निर्दिष्ट करते हैं। डिफ़ॉल्ट रूप से तालिका डेटा डिस्क पर संग्रहीत किया जाएगा। यदि आप मेमोरी इंजन निर्दिष्ट करते हैं, तो डेटा केवल मेमोरी में संग्रहीत किया जाएगा।
अस्थायी तालिकाओं के निर्माण के दौरान फाइल सिस्टम में बनाई गई फाइलों को वास्तव में खोजना संभव होना चाहिए। निम्नलिखित कमांड चलाने के बाद:
CREATE TABLE test.table_myisam (x int) ENGINE=MyISAM;
CREATE TABLE test.table_memory (x int) ENGINE=MEMORY;
CREATE TEMPORARY TABLE test.temp_table_myisam (x int) ENGINE=MyISAM;
CREATE TEMPORARY TABLE test.temp_table_memory (x int) ENGINE=MEMORY;
मैंने तब निर्देशिका की जाँच की:C:\ProgramData\MySQL\MySQL Server 5.5\data\test (विंडोज़ पर) और मौजूद फाइलें थीं:
table_innodb.frm # Table definition. table_innodb.MYD # MyISAM table data file. table_innodb.MYI # MyISAM table index file. table_memory.frm # No MYD or MYI file for the MEMORY engine.
अस्थायी तालिकाओं को C:\Windows\Temp में संग्रहीत किया जाता है और उनके असामान्य नाम होते हैं, लेकिन आंतरिक रूप से डेटा उसी तरह संग्रहीत किया जाता है।
#sql9a0_7_d.frm # This is the MyISAM temporary table. #sql9a0_7_d.MYD # MyISAM data file for temporary table. #sql9a0_7_d.MYI # MyISAM index file for temporary table. #sql9a0_7_c.frm # This is the MEMORY engine file. No MYD or MYI.