Oracle Lumikha ng Temp Table

Oracle Lumikha Ng Temp Table



Ang mga pandaigdigang pansamantalang talahanayan ay nakakatulong kapag nag-iimbak ng pansamantalang data na kailangan lang para sa isang transaksyon o tagal ng session. Hindi tulad ng mga regular na talahanayan, ang mga pandaigdigang pansamantalang talahanayan ay awtomatikong ibinabagsak kapag natapos ang session o transaksyon. Kaya, hindi nila kailangang tahasang i-drop tulad ng mga normal na talahanayan. Gayunpaman, ang mga pandaigdigang pansamantalang talahanayan ay makikita lamang sa kasalukuyang session, kaya hindi sila ma-access ng ibang mga session o user.

Sa Oracle, ang isang pandaigdigang pansamantalang talahanayan ay isang espesyal na uri ng talahanayan na nilikha gamit ang 'lumikha ng pandaigdigang pansamantalang talahanayan' na pahayag. Ang pahayag na ito ay katulad ng karaniwang pahayag na 'lumikha ng talahanayan' ngunit kasama ang keyword na 'pansamantalang pandaigdig' upang tukuyin na ang talahanayan ay isang pandaigdigang pansamantalang talahanayan.







Ang syntax ng pahayag na 'GUMAWA NG GLOBAL TEMPORARY TABLE' ay ang mga sumusunod:



GUMAWA NG GLOBAL TEMPORARY TABLE na table_name (
column1 datatype [NULL | HINDI NULL],
column2 datatype [NULL | HINDI NULL],
...
) [ON COMMIT {DELETE | PRESERVE} MGA HANAY];

Sa syntax na ito, ang table_name ay ang pangalan ng pandaigdigang pansamantalang talahanayan na gusto mong likhain. column1, column2, atbp., ay ang mga pangalan at uri ng data ng mga column sa talahanayan.



Ang ON COMMIT clause ay tumutukoy kung ang mga row sa talahanayan ay tatanggalin o papanatilihin kapag ang kasalukuyang transaksyon ay ginawa. Gagamitin ng database engine ang opsyong ON COMMIT DELETE ROWS kung hindi tinukoy ang sugnay na ON COMMIT.





Gaya ng nabanggit, tandaan na ang data sa isang pansamantalang talahanayan ay pribado. Nangangahulugan ito na walang ibang session maliban sa kung saan nilikha ang talahanayan ang makaka-access dito.

Paglikha ng Global Temporary Table Halimbawa

Tuklasin natin ang ilang praktikal na halimbawa ng paggamit ng create temporary table statement sa mga database ng Oracle.



Isaalang-alang ang halimbawang query na ipinapakita sa ibaba:

GUMAWA NG GLOBAL TEMPORARY TABLE temp_sales (
product_id NUMBER(10) NOT NULL,
sale_date DATE NOT NULL,
sale_amount NUMBER(10,2) NOT NULL
) ON COMMIT DELETE ROWS;

Sa halimbawa sa itaas, gumawa kami ng pansamantalang talahanayan gamit ang opsyong ON COMMIT DELETE ROWS.

Pagkatapos ay maaari naming ipasok ang ilang sample na data bilang:

INSERT INTO TEMP_SALES (product_id, sale_date, sale_amount) VALUES (1, DATE '2022-10-01', 100);
INSERT INTO TEMP_SALES (product_id, sale_date, sale_amount) VALUES (2, DATE '2022-10-02', 500);
INSERT INTO TEMP_SALES (product_id, sale_date, sale_amount) VALUES (3, DATE '2022-10-03', 130);

Pagkatapos nito, maaari mong gawin ang transaksyon bilang:

COMMIT;

Pagkatapos mag-commit, puputulin ng database engine ang lahat ng data sa pansamantalang talahanayan gaya ng tinukoy sa commit clause.

Halimbawa 2

Ang sumusunod na halimbawa ay nagpapakita kung paano lumikha ng isang talahanayan na nagpapanatili ng mga hilera sa commit:

GUMAWA NG GLOBAL TEMPORARY TABLE temp_sales (
product_id NUMBER(10) NOT NULL,
sale_date DATE NOT NULL,
sale_amount NUMBER(10,2) NOT NULL
) SA COMMIT PRESERVE ROWS ;

Pagkatapos ay maaari kaming magdagdag ng mga sample na row  at mag-commit gaya ng ipinapakita:

INSERT INTO TEMP_SALES (product_id, sale_date, sale_amount) VALUES (1, DATE '2022-10-01', 100);
INSERT INTO TEMP_SALES (product_id, sale_date, sale_amount) VALUES (2, DATE '2022-10-02', 500);
INSERT INTO TEMP_SALES (product_id, sale_date, sale_amount) VALUES (3, DATE '2022-10-03', 130);

COMMIT;

Sa kasong ito, dapat na mapanatili ang data pagkatapos ng commit operation, gaya ng ipinapakita ng piling pahayag sa ibaba:

PUMILI * MULA SA TEMP_SALES;

Output:

Konklusyon

Ang pahayag na 'lumikha ng pansamantalang talahanayan' ay isang mahusay na tool para sa paglikha ng mga pansamantalang talahanayan sa Oracle. Ang mga pansamantalang talahanayan ay kapaki-pakinabang para sa pag-imbak ng pansamantalang data na kailangan lamang para sa isang transaksyon o session. Ang pahayag na 'lumikha ng pansamantalang talahanayan' ay nagbibigay-daan sa iyo na tukuyin ang istraktura at mga column ng pansamantalang talahanayan at tukuyin kung paano hahawakan ang mga hilera kapag ginawa ang transaksyon. Bilang resulta, ang paggamit ng mga pansamantalang talahanayan ay maaaring mapabuti ang pagganap at kahusayan ng iyong mga query at application at mabawasan ang dami ng permanenteng espasyo sa imbakan na kinakailangan sa iyong database.