Senin, 09 April 2012

MySQL Temporary Tables

Pada umumnya, tabel yang kita bangun dapat digunakan dalam jangka waktu yang panjang. Aplikasi dapat menggunakan tabel tersebut berbulan ataupun atau bahkan tahunan. Pembuatan tabel dengan perintah CREATE TABLE, biasanya dikatakan tabel yang permanen. Biasanya, banyak pengguna SQL ataupun kebanyakan aplikasi menggunakan tabel permanen.

Penggunaan tabel sementara (temporary) diperlukan. Tidak seperti tabel permanan, tabel temporary memiliki kehidupan dalam jangka/masa yang pendek dan hanya dapat digunakan atau dilihat oleh pengguna SQL yang membuatnya. Pada dasarnya, seorang pengguna SQL memiliki sebuah tabel temporary dalam batas waktu tertentu.
Dalam penamaan tabel temporary diperbolehkan memiliki nama yang sama dengan nama tabel permanen yang ada. Pada umumnya tabel temporary tidak dibuang/dihapus, akan tetapi tabel temporary yang sedang digunakan oleh pengguna SQL menyebunyikan tabel permanen yang memiliki nama yang sama tersebut.
Anda dapat menggunakan perintah CREATE TABLE untuk membuat tabel temporary. Secara sederhannya anda tinggal menambahkan kata TEMPORARY

Berikut adalah contoh bagaimana membuat Temporary Table


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)

Ketika Anda mengetikkan perintah SHOW TABLES, Table Temporary tidak akan tampil di daftar table. Dan ketika Anda logout dari MySQL maka Table Temporary juga tidak akan bisa ditemukan lagi dengan perintah SELECT.
Secara default, semua Temporary Table akan terhapus secara otomatis ketika koneksi database berakhir. Namun Anda tetap bisa menghapus tabel tersebut dengan perintah DROP TABLE.

Berikut ini adalah contoh bagaimana menghapus Temporary Table dengan perintah DROP TABLE.
 
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;
ERROR 1146: Table 'TUTORIALS.SalesSummary' doesn't exist

0 komentar:

Posting Komentar

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Bluehost Review