Oracle Luo Temp Table

Oracle Luo Temp Table



Yleiset väliaikaiset taulukot ovat hyödyllisiä tallennettaessa alustavia tietoja, joita tarvitaan vain tapahtuman tai istunnon kestoa varten. Toisin kuin tavalliset taulukot, yleiset väliaikaiset taulukot hylätään automaattisesti istunnon tai tapahtuman päättyessä. Joten niitä ei tarvitse nimenomaisesti pudottaa kuten tavallisia pöytiä. Yleiset väliaikaiset taulukot näkyvät kuitenkin vain nykyiselle istunnolle, joten muut istunnot tai käyttäjät eivät voi käyttää niitä.

Oraclessa yleinen väliaikainen taulukko on erityinen taulukko, joka on luotu 'create global väliaikaisen taulukon' -käskyn avulla. Tämä lauseke on samanlainen kuin tavallinen 'luo taulukko' -lause, mutta sisältää avainsanan 'global tilapäinen', joka määrittää, että taulukko on yleinen väliaikainen taulukko.







'CREATE GLOBAL TEMPORARY TABLE' -käskyn syntaksi on seuraava:



LUO MAAILMANLAAJUINEN VÄLIAIKAINEN TAULUKO taulukon_nimi (
sarake1 tietotyyppi [NULL | EI TYHJÄ],
sarake2 tietotyyppi [NULL | EI TYHJÄ],
...
) [SITOA {POISTA | PRESERVE} ROWS];

Tässä syntaksissa taulukon_nimi on globaalin väliaikaisen taulukon nimi, jonka haluat luoda. sarake1, sarake2 jne. ovat taulukon sarakkeiden nimiä ja tietotyyppejä.



ON COMMIT -lause määrittää, poistetaanko tai säilytetäänkö taulukon rivit, kun nykyinen tapahtuma on sitoutunut. Tietokantakone käyttää ON COMMIT DELETE ROWS -vaihtoehtoa, jos ON COMMIT -lausetta ei ole määritetty.





Kuten mainittiin, muista, että väliaikaisen taulukon tiedot ovat yksityisiä. Tämä tarkoittaa, että muut istunnot kuin ne, jotka loivat taulukon, eivät voi käyttää sitä.

Esimerkki globaalin väliaikaisen taulukon luomisesta

Katsotaanpa joitain käytännön esimerkkejä Create väliaikaisen taulukon -käskyn käytöstä Oraclen tietokannassa.



Harkitse alla olevaa esimerkkikyselyä:

LUO MAAILMANLAAJUINEN VÄLIAIKAINEN TAULUKO temp_sales (
product_id NUMBER(10) EI NULL,
sale_date DATE NOT NULL,
myyntisumma NUMERO(10,2) EI TYHJÄ
) KÄYTÖSSÄ POISTA RIVIT;

Yllä olevassa esimerkissä luomme väliaikaisen taulukon käyttämällä ON COMMIT DELETE ROWS -vaihtoehtoa.

Voimme sitten lisätä joitakin esimerkkitietoja:

INSERT INTO TEMP_MYYNTI (tuotetunnus, myyntipäivä, myyntimäärä) ARVOT (1, PÄIVÄMÄÄRÄ '2022-10-01', 100);
INSERT INTO TEMP_MYYNTI (tuotetunnus, myyntipäivä, myyntimäärä) ARVOT (2, PÄIVÄMÄÄRÄ '2022-10-02', 500);
INSERT INTO TEMP_MYYNTI (tuotetunnus, myyntipäivä, myyntimäärä) ARVOT (3, DATE '2022-10-03', 130);

Tämän jälkeen voit sitoa tapahtuman seuraavasti:

TEHDÄ;

Toiminnan jälkeen tietokantamoottori katkaisee kaikki väliaikaisen taulukon tiedot toimituslausekkeen mukaisesti.

Esimerkki 2

Seuraava esimerkki näyttää, kuinka luodaan taulukko, joka säilyttää rivit toimituksen yhteydessä:

LUO MAAILMANLAAJUINEN VÄLIAIKAINEN TAULUKO temp_sales (
product_id NUMBER(10) EI NULL,
sale_date DATE NOT NULL,
myyntisumma NUMERO(10,2) EI TYHJÄ
) SIJOITTAMISTA SÄILYTYSRIVIÄ ;

Voimme sitten lisätä esimerkkirivejä ja sitoutua kuvan osoittamalla tavalla:

INSERT INTO TEMP_MYYNTI (tuotetunnus, myyntipäivä, myyntimäärä) ARVOT (1, PÄIVÄMÄÄRÄ '2022-10-01', 100);
INSERT INTO TEMP_MYYNTI (tuotetunnus, myyntipäivä, myyntimäärä) ARVOT (2, PÄIVÄMÄÄRÄ '2022-10-02', 500);
INSERT INTO TEMP_MYYNTI (tuotetunnus, myyntipäivä, myyntimäärä) ARVOT (3, DATE '2022-10-03', 130);

TEHDÄ;

Tässä tapauksessa tiedot tulee säilyttää vahvistuksen jälkeen, kuten alla olevasta select-lausekkeesta käy ilmi:

SELECT * FROM TEMP_SALES;

Lähtö:

Johtopäätös

Luo väliaikainen taulukko -käsky on tehokas työkalu väliaikaisten taulukoiden luomiseen Oraclessa. Väliaikaiset taulukot ovat hyödyllisiä tilapäisten tietojen tallentamiseen, joita tarvitaan vain tapahtumaa tai istuntoa varten. Luo väliaikainen taulukko -käskyn avulla voit määrittää väliaikaisen taulukon rakenteen ja sarakkeet sekä määrittää, kuinka rivejä käsitellään, kun tapahtuma on sitoutunut. Tämän seurauksena tilapäisten taulukoiden käyttö voi parantaa kyselyjesi ja sovelluksiesi suorituskykyä ja tehokkuutta ja vähentää tietokannassasi tarvittavan pysyvän tallennustilan määrää.