Kako MySQL stvara/ispušta privremenu tablicu? Uloga MySQL privremenih tablica

MySQLKako stvoriti/ispustiti privremenu tablicu?MySQLUloga privremenih tablica

MySQL privremena tablica

MySQL privremena tablica vrlo je korisna kada trebamo spremiti neke privremene podatke.Privremene tablice vidljive su samo u trenutnoj vezi. Kada se veza zatvori, Mysql će automatski izbrisati tablicu i osloboditi sav prostor.

Privremene tablice dodane su u MySQL verziji 3.23. Ako je vaša MySQL verzija starija od verzije 3.23, ne možete koristiti MySQL privremene tablice.Međutim, sada je rijetkost koristiti tako nisku verziju.MySQL baza podatakaservis.

MySQL privremena tablica vidljiva je samo trenutnoj vezi. Ako koristite PHP skriptu za stvaranje MySQL privremene tablice, privremena tablica će se automatski uništiti kad god se PHP skripta izvrši.

Ako koristite drugi MySQL klijentski program za povezivanje s MySQL poslužiteljem baze podataka za stvaranje privremene tablice, privremena tablica će biti uništena tek kada se zatvori klijentski program.Naravno, možete je uništiti i ručno.

primjer

Sljedeće prikazuje jednostavan primjer korištenja MySQL privremene tablice, sljedeći SQL kod može se primijeniti na funkciju mysql_query() PHP skripte.

MySQL的> CREATE TEMPORARY TABLE SalesSummary - > PRODUCT_NAME VARCHAR 50 NOT NULL
     - > TOTAL_SALES DECIMAL 12 2 NOT NULL DEFAULT 0.00 - > avg_unit_price DECIMAL 7 2 NOT NULL DEFAULT 0.00 - > total_units_sold INT UNSIGNED NOT NULL DEFAULT 0 ); 查询OK 0 行受影响0.00  
     
     
     

 

的MySQL > INSERT INTO SalesSummary - > PRODUCT_NAME TOTAL_SALES avg_unit_price total_units_sold - > VALUES
     - > '黄瓜' 100.25 90 2 );
     
        

mysql > SELECT * FROM SalesSummary ; + -------------- + ------------- + ---------------- + --- --------------- + | product_name | total_sales | avg_unit_price | total_units_sold | + -------------- + ------------- + ---------------- + --- --------------- + | 黄瓜      | 100.25 | 90.00 | 2 | + -------------- + ------------- + ---------------- + --- --------------- + 1 集合0.00 



                                   

  

kada koristitePOKREĆI TABLICEKada naredba prikaže popis podatkovnih tablica, nećete moći vidjeti tablicu SalesSummary.

Ako izađete iz trenutne MySQL sesije, koristiteSELECTnaredba za čitanje izvorno stvorenih podataka privremene tablice, tada ćete ustanoviti da tablica ne postoji u bazi podataka jer je privremena tablica uništena kada izađete.


Ispustite MySQL privremenu tablicu

Prema zadanim postavkama, privremene tablice automatski se uništavaju kada prekinete vezu s bazom podataka.Naravno, također možete koristiti u trenutnoj MySQL sesijiISPUSTI STOLnaredba za ručno ispuštanje privremene tablice.

Slijedi primjer ručnog ispuštanja privremene tablice:

mysql> CREATE TEMPORARY TABLE SalesSummary (
    -> product_name VARCHAR(50) NOT NULL
    -> , total_sales DECIMAL(12,2) NOT NULL DEFAULT 0.00
    -> , avg_unit_price DECIMAL(7,2) NOT NULL DEFAULT 0.00
    -> , total_units_sold INT UNSIGNED NOT NULL DEFAULT 0
);
Query OK, 0 rows affected (0.00 sec)

mysql> INSERT INTO SalesSummary
    -> (product_name, total_sales, avg_unit_price, total_units_sold)
    -> VALUES
    -> ('cucumber', 100.25, 90, 2);

mysql> SELECT * FROM SalesSummary;
+--------------+-------------+----------------+------------------+
| product_name | total_sales | avg_unit_price | total_units_sold |
+--------------+-------------+----------------+------------------+
| cucumber     |      100.25 |          90.00 |                2 |
+--------------+-------------+----------------+------------------+
1 row in set (0.00 sec)
mysql>DROP TABLE SalesSummary ; 
mysql >   SELECT * FROM SalesSummary ; 
错误1146 'chenweiliang.SalesSummary' 存在  

发表 评论

Vaša email adresa neće biti objavljena. Koriste se obavezna polja * Označiti

Dođite na vrh