Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL स्टोर्ड प्रोसीजर में CREATE TEMPORARY TABLE का उपयोग करके अस्थायी टेबल बनाना

MySQL स्टोर्ड प्रोसीजर के अंदर CREATE TEMPORARY TABLE का उपयोग करके सत्र-विशिष्ट अस्थायी टेबल बनाएं और डेटा डालें।

सिंटैक्स

CREATE PROCEDURE yourProcedureName()
BEGIN
    CREATE TEMPORARY TABLE yourTemporaryTableName SELECT yourValue;
END

उदाहरण: अस्थायी टेबल बनाने वाली प्रोसीजर

mysql> DELIMITER //
mysql> CREATE PROCEDURE create_Temporary_Table()
    -> BEGIN
    ->     CREATE TEMPORARY TABLE tmpDemoTable SELECT 500;
    -> END//
Query OK, 0 rows affected (0.15 sec)

अस्थायी टेबल में रिकॉर्ड डालने वाली प्रोसीजर

mysql> CREATE PROCEDURE insert_Record_InTempTable()
    -> BEGIN
    ->     INSERT INTO tmpDemoTable VALUES(300);
    -> END//
Query OK, 0 rows affected (0.06 sec)

mysql> DELIMITER ;

प्रोसीजर कॉल करना

mysql> CALL create_Temporary_Table();
Query OK, 1 row affected (0.00 sec)

mysql> CALL insert_Record_InTempTable();
Query OK, 1 row affected (0.00 sec)

अस्थायी टेबल देखना

mysql> SELECT * FROM tmpDemoTable;

आउटपुट

+-----+
| 500 |
+-----+
| 500 |
| 300 |
+-----+
2 rows in set (0.00 sec)

महत्वपूर्ण विशेषताएं:

  • अस्थायी टेबल केवल वर्तमान सत्र के लिए दृश्यमान होती है
  • सत्र समाप्त होने पर स्वचालित रूप से ड्रॉप हो जाती है
  • अलग सत्र समान नाम की अस्थायी टेबल बना सकते हैं (कोई टकराव नहीं)
  • CREATE TEMPORARY TABLE ... SELECT कॉलम परिभाषाएं परिणाम सेट से लेता है

स्पष्ट कॉलम परिभाषा के साथ:

CREATE TEMPORARY TABLE tmpDemoTable (
    Id INT AUTO_INCREMENT PRIMARY KEY,
    Value INT
);

नोट: प्रोसीजर के बाहर से अस्थायी टेबल एक्सेस नहीं की जा सकती (यदि प्रोसीजर के अंदर बनाई गई है, तो प्रोसीजर समाप्त होने के बाद भी सत्र के दौरान मौजूद रहती है)।

  1. - MySQL में स्टोर्ड प्रोसीजर में DECLARE से वेरिएबल कैसे बनाएं?

    MySQL में स्टोर्ड प्रोसीजर के अंदर लोकल वेरिएबल घोषित करने के लिए DECLARE स्टेटमेंट का उपयोग करें। ये वेरिएबल केवल प्रोसीजर के BEGIN...END ब्लॉक के भीतर दृश्यमान होते हैं और इंटरमीडिएट गणना, अस्थायी मान स्टोर करने के लिए उपयोगी हैं। सिंटैक्स DECLARE variable_name data_type [DEFAULT default_value];

  1. - MySQL स्टोर्ड प्रोसीजर में टेबल में डेटा कैसे इन्सर्ट करें?

    MySQL स्टोर्ड प्रोसीजर के अंदर INSERT स्टेटमेंट का उपयोग करके टेबल में डेटा इन्सर्ट कर सकते हैं। पैरामीटर लेकर डायनामिक इन्सर्ट करने वाला प्रोसीजर पुन: उपयोग योग्य और सुरक्षित होता है। सिंटैक्स CREATE PROCEDURE procedure_name(IN param1 TYPE, IN param2 TYPE, ...) BEGIN INSERT INTO table_name (co

  1. - MySQL स्टोर्ड प्रोसीजर में SHOW CREATE TABLE निष्पादित करें

    डायनामिक SQL से स्टोर्ड प्रोसीजर में SHOW CREATE TABLE चलाएं टेबल नाम पैरामीटर लेकर SHOW CREATE TABLE को डायनामिक रूप से निष्पादित करने वाला स्टोर्ड प्रोसीजर बनाएं। टेबल बनाएं: mysql> create table DemoTable2011 ( StudentId int NOT NULL AUTO_INCREMENT, StudentName varchar(20), StudentAge int, Stud