Kako MySQL kreira/ispušta privremenu tabelu? Uloga MySQL privremenih tabela

MySQLKako kreirati/ispustiti privremenu tabelu?MySQLUloga privremenih stolova

MySQL privremena tabela

MySQL privremena tabela je veoma korisna kada treba da sačuvamo neke privremene podatke.Privremene tabele su vidljive samo u trenutnoj vezi.Kada se veza zatvori, Mysql će automatski izbrisati tabelu i osloboditi sav prostor.

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

MySQL privremena tabela je vidljiva samo za trenutnu vezu.Ako koristite PHP skriptu za kreiranje MySQL privremene tabele, privremena tabela će biti automatski uništena svaki put kada se PHP skripta izvrši.

Ako koristite drugi MySQL klijentski program za povezivanje sa MySQL serverom baze podataka kako biste kreirali privremenu tabelu, privremena tabela će biti uništena samo kada se klijentski program zatvori.Naravno, možete je uništiti i ručno.

Instance

U nastavku je prikazan jednostavan primjer korištenja MySQL privremene tablice, sljedeći SQL kod se može 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 koristitePRIKAZITE TABELEKada komanda prikaže listu tabela podataka, nećete moći da vidite tabelu SalesSummary.

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


Ispustite MySQL privremenu tabelu

Po defaultu, privremene tablice se automatski uništavaju kada prekinete vezu s bazom podataka.Naravno, možete koristiti iu trenutnoj MySQL sesijiDROP TABLEnaredbu 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' 存在  

Komentari

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

Dođite na vrh