MySQL Buat Tabel Temp

Tabel sementara MySQL adalah jenis tabel unik yang memungkinkan Anda menyimpan data sementara dalam satu sesi user. Tabel sementara MySQL tidak jauh berbeda dari tabel MySQL biasa, kecuali tabel tersebut bersifat volatil.

Setelah tabel diinisialisasi dalam sesi user tertentu, hanya user tersebut yang dapat melihat, mengedit, atau menghapus tabel. Pengguna lain yang masuk tidak memiliki akses ke sana. Setelah sesi mati, MySQL secara otomatis menjatuhkan tabel dan data yang tersimpan di dalamnya.

Dalam tutorial ini, kita akan dengan cepat membahas bagaimana Anda dapat membuat dan menggunakan tabel sementara MySQL.

CATATAN: Dukungan untuk tabel sementara MySQL dimulai dari server MySQL versi 3.2 ke atas. Jika Anda menggunakan versi yang lebih lama, Anda mungkin tidak memiliki akses ke fitur tertentu.

Bagaimana Cara Membuat Tabel Sementara?

Proses, dan sintaks, untuk membuat tabel sementara sangat mirip dengan apa yang akan Anda gunakan untuk membuat tabel normal.

Namun, Anda perlu menentukan kata kunci SEMENTARA dalam pernyataan. Kami dapat mengekspresikan kueri sebagai:

CREATE TEMPORARY TABLE table_name (
Columns,
table_constraints
);

Anda dapat menentukan nama tabel apa saja asalkan tidak bertentangan dengan tabel utama.

Meskipun Anda dapat membuat tabel sementara dengan nama yang sama dengan tabel utama, itu bukan praktik yang baik karena dapat menyebabkan kebingungan dan kemungkinan kehilangan data.

Contoh 1
Query berikut menggambarkan cara membuat tabel sementara MySQL dan menyimpan data di dalamnya.

Mulailah dengan masuk ke sesi MySQL:

mysql -u root -p

Setelah masuk, buat database sampel:

CREATE DATABASE IF NOT EXISTS temp_db;

Pada langkah selanjutnya, ubah database dan buat tabel sementara menggunakan kueri:

USE temp_db;
CREATE TEMPORARY TABLE temp_tb (id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(100) NOT NULL, email VARCHAR(255));

Setelah Anda membuat tabel sementara, Anda dapat menyisipkan dan memperbarui data yang tersimpan di dalamnya menggunakan proses yang sama yang digunakan untuk mengisi dan memperbarui tabel MySQL normal.

Misalnya, gunakan kueri di bawah ini untuk menyisipkan data sampel ke temp_tb yang dibuat di atas:

INSERT INTO temp_tb (username, email)
VALUES ('t00r', '[email protected]'),
('db_user', '[email protected]'),
('z3ro', '[email protected]');

Setelah Anda memiliki data, Anda dapat memilih nilai darinya menggunakan pernyataan SQL SELECT normal:

SELECT * FROM temp_tb;
+----+----------+----------------+
| id | username | email          |
+----+----------+----------------+
|  1 | t00r     | [email protected] |
|  2 | db_user  | [email protected]   |
|  3 | z3ro     | [email protected]  |
+----+----------+----------------+
3 rows in set (0.00 sec)

Contoh 2
Kasus useran yang lebih umum dari tabel sementara MySQL adalah untuk menyimpan nilai dari tabel lain, yang dapat berguna, terutama ketika Anda memiliki skrip panjang yang mengakses database; mencegah pertanyaan lain terjadi.

Mari kita perhatikan database sampel sakila. Kami dapat membuat tabel sementara berdasarkan tabel pelanggan menggunakan kueri:

USE sakila;

Setelah di database, gunakan kueri di bawah ini:

CREATE TEMPORARY TABLE customer_temp SELECT * FROM customer LIMIT 0;

Setelah kueri berhasil dieksekusi, Anda dapat memverifikasi bahwa tabel berisi informasi serupa menggunakan pernyataan DESC sebagai:

Bagaimana Mengganti Nama Tabel Sementara?

Tidak seperti tabel MySQL normal, Anda tidak dapat menggunakan direktori pernyataan RENAME untuk mengganti nama tabel sementara.

Untuk mencapai ini, Anda dapat menggunakan kueri ALTER TABLE.

Misalnya, untuk mengganti nama tabel sementara dari customer_temp menjadi cust_temp; kita dapat menggunakan kueri:

ALTER TABLE customer_temp RENAME cust_temp;

Bagaimana Menjatuhkan Tabel Sementara?

Untuk menjatuhkan tabel sementara, gunakan pernyataan DROP SEMENTARA TABLE. Menggunakan kata kunci SEMENTARA memastikan bahwa Anda tidak menjatuhkan tabel normal secara tidak sengaja.

DROP TEMPORARY TABLE cust_temp;

Untuk Rekap

Tabel sementara MySQL memungkinkan Anda untuk menyimpan informasi sementara untuk satu sesi user. Berikut ini adalah properti dari tabel sementara MySQL:

  1. Kami membuatnya dengan menentukan kata kunci SEMENTARA.
  2. Mereka tidak ada di luar sesi user tunggal.
  3. Mereka tidak stabil dan dijatuhkan setelah sesi user mati.
  4. Mereka berfungsi mirip dengan tabel MySQL normal.
  5. Mereka dapat memiliki nama yang mirip dengan tabel utama (tidak disarankan).
  6. Dua tabel dalam satu sesi user tidak boleh berisi nama yang mirip.

Itu saja untuk yang satu ini!

Related Posts