Hoe maakt/dropt MySQL een tijdelijke tabel? De rol van MySQL tijdelijke tabellen

MySQLHoe maak je een tijdelijke tabel aan / zet je deze neer?MySQLDe rol van tijdelijke tabellen

MySQL tijdelijke tabel

MySQL tijdelijke tabel is erg handig wanneer we tijdelijke gegevens moeten opslaan.Tijdelijke tabellen zijn alleen zichtbaar in de huidige verbinding. Wanneer de verbinding wordt gesloten, zal Mysql de tabel automatisch verwijderen en alle ruimte vrijgeven.

Tijdelijke tabellen zijn toegevoegd in MySQL-versie 3.23. Als uw MySQL-versie lager is dan versie 3.23, kunt u geen tijdelijke MySQL-tabellen gebruiken.Het is echter zeldzaam om zo'n lage versie nu te gebruiken.MySQL-databaseonderhoud.

De tijdelijke tabel van MySQL is alleen zichtbaar voor de huidige verbinding.Als u een PHP-script gebruikt om een ​​tijdelijke MySQL-tabel te maken, wordt de tijdelijke tabel automatisch vernietigd wanneer het PHP-script wordt uitgevoerd.

Als u een ander MySQL-clientprogramma gebruikt om verbinding te maken met de MySQL-databaseserver om een ​​tijdelijke tabel aan te maken, wordt de tijdelijke tabel alleen vernietigd als het clientprogramma wordt afgesloten. U kunt deze natuurlijk ook handmatig vernietigen.

Voorbeeld

Het volgende toont een eenvoudig voorbeeld van het gebruik van een MySQL-tijdelijke tabel, de volgende SQL-code kan worden toegepast op de functie mysql_query() van het PHP-script.

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 



                                   

  

wanneer je gebruiktTOON TABELLENWanneer de opdracht de lijst met gegevenstabellen weergeeft, kunt u de tabel SalesSummary niet zien.

Als u de huidige MySQL-sessie afsluit, gebruik danSELECTcommando om de gegevens van de oorspronkelijk gemaakte tijdelijke tabel te lezen, dan zult u merken dat de tabel niet in de database bestaat, omdat de tijdelijke tabel is vernietigd wanneer u afsluit.


Drop MySQL tijdelijke tabel

Standaard worden tijdelijke tabellen automatisch vernietigd wanneer u de verbinding met de database verbreekt.Natuurlijk kunt u deze ook gebruiken in de huidige MySQL-sessieDROP TAFELcommando om de tijdelijke tabel handmatig te verwijderen.

Het volgende is een voorbeeld van het handmatig verwijderen van een tijdelijke tabel:

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' 存在  

发表 评论

Uw e-mailadres wordt niet gepubliceerd. 必填 项 已 用 * 标注

Scroll naar boven