जवाबों:
हां, ओरेकल में अस्थायी टेबल हैं। यहाँ एक AskTom लेख का लिंक दिया गया है जिसमें उनका वर्णन किया गया है और यहाँ आधिकारिक oracle CREATE TABLE प्रलेखन है।
हालांकि, ओरेकल में, केवल एक अस्थायी तालिका में डेटा अस्थायी है। तालिका एक नियमित वस्तु है जो अन्य सत्रों में दिखाई देती है। ओरेकल में अस्थायी टेबल बनाने और छोड़ने के लिए यह एक बुरा अभ्यास है।
CREATE GLOBAL TEMPORARY TABLE today_sales(order_id NUMBER)
ON COMMIT PRESERVE ROWS;
ओरेकल 18 सी में निजी अस्थायी तालिकाओं को जोड़ा गया, जो एकल-सत्र इन-मेमोरी ऑब्जेक्ट हैं। देखें प्रलेखन अधिक जानकारी के लिए। निजी अस्थायी तालिकाओं को गतिशील रूप से बनाया और गिराया जा सकता है।
CREATE PRIVATE TEMPORARY TABLE ora$ptt_today_sales AS
SELECT * FROM orders WHERE order_date = SYSDATE;
अस्थायी टेबल्स उपयोगी हो सकते हैं लेकिन वे आम तौर पर ओरेकल में दुरुपयोग होते हैं। इनलाइन विचारों का उपयोग करके एक एकल SQL कथन में कई चरणों को जोड़कर उन्हें अक्सर टाला जा सकता है।
CREATE TABLE AS SELECT
: एलओबी कॉलम के साथ दूरस्थ तालिकाओं से चयन करें, क्योंकि आप सीधे SELECT
उनसे नहीं कर सकते । मैं दूरस्थ डेटाबेस से रिकॉर्ड कॉपी करने के लिए एक प्रक्रिया लिख रहा हूं, और यह मेरा समाधान था: रिकॉर्ड्स को जीटीटी में लाएं, और फिर उस से "असली" तालिका में कॉपी करें।
बस एक टिप .. ओरेकल में अस्थायी टेबल SQL सर्वर के लिए अलग हैं। आप इसे ONCE और केवल ONCE बनाते हैं, हर सत्र में नहीं। आपके द्वारा इसमें डाली गई पंक्तियाँ केवल आपके सत्र के लिए दिखाई देती हैं, और जब आप सत्र (या लेन-देन का अंत, जिसके आधार पर आप उपयोग करते हैं) के आधार पर स्वचालित रूप से हटा दिए जाते हैं (यानी, TRUNCATE
नहीं, DROP
)।
DELETED
DROP
पेड नहीं ।
CREATE GLOBAL TEMPORARY TABLE Table_name
(startdate DATE,
enddate DATE,
class CHAR(20))
ON COMMIT DELETE ROWS;
ON COMMIT DELETE ROWS
यदि आप एक सत्र के दौरान वेतन वृद्धि करते हैं, तो उन्हें जल्द ही छोड़ दिया जाएगा।
TATE तालिका_temp_list_objects के रूप में बनाएँ
O.owner का चयन करें, o.object_name से sys.all_objects o WHERE o.object_type = 'TABLE';