Berikut adalah empat cara untuk membuat daftar tabel dalam database MySQL menggunakan SQL atau baris perintah.
SHOW TABLES Perintah
SHOW TABLES perintah mencantumkan non-TEMPORARY tabel dan tampilan dalam database yang diberikan:
SHOW TABLES; Hasil:
+-----------------+ | Tables_in_music | +-----------------+ | Albums | | Artists | | Genres | | valbumsartists | | valbumsgenres | | vallalbums | | vallartists | | vallgenres | +-----------------+
Itu mencantumkan semua tabel dalam database saat ini, yang disebut Music .
Kami juga dapat menggunakan FULL pengubah untuk mengembalikan kolom kedua yang menampilkan jenis:
SHOW FULL TABLES; Hasil:
+-----------------+------------+ | Tables_in_music | Table_type | +-----------------+------------+ | Albums | BASE TABLE | | Artists | BASE TABLE | | Genres | BASE TABLE | | valbumsartists | VIEW | | valbumsgenres | VIEW | | vallalbums | VIEW | | vallartists | VIEW | | vallgenres | VIEW | +-----------------+------------+
Kita dapat melihat bahwa sebagian besar hasil yang tercantum di sini sebenarnya adalah tampilan.
Jika kita hanya ingin tabel dasar dikembalikan, kita dapat menggunakan WHERE klausa terhadap Table_type kolom:
SHOW FULL TABLES
WHERE Table_type = 'BASE TABLE'; Hasil:
+-----------------+------------+ | Tables_in_music | Table_type | +-----------------+------------+ | Albums | BASE TABLE | | Artists | BASE TABLE | | Genres | BASE TABLE | +-----------------+------------+
SHOW TABLES juga menerima LIKE klausa yang dapat digunakan untuk mempersempit hasil menjadi tabel yang cocok dengan pola tertentu:
SHOW TABLES
LIKE 'a%'; Hasil:
+----------------------+ | Tables_in_music (a%) | +----------------------+ | Albums | | Artists | +----------------------+
Dalam hal ini saya mengembalikan semua tabel yang dimulai dengan huruf a .
SHOW TABLE STATUS Perintah
SHOW TABLE STATUS perintahnya mirip dengan SHOW TABLES perintah tetapi memberikan informasi yang lebih luas tentang masing-masing (non-TEMPORARY ) meja.
Itu juga menerima WHERE dan LIKE klausa, seperti SHOW TABLES .
Contoh:
SHOW TABLE STATUS
LIKE 'a%'; Hasil:
+---------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+-------------+------------+--------------------+----------+----------------+---------+ | Name | Engine | Version | Row_format | Rows | Avg_row_length | Data_length | Max_data_length | Index_length | Data_free | Auto_increment | Create_time | Update_time | Check_time | Collation | Checksum | Create_options | Comment | +---------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+-------------+------------+--------------------+----------+----------------+---------+ | Albums | InnoDB | 10 | Dynamic | 20 | 819 | 16384 | 0 | 32768 | 0 | 21 | 2022-02-15 09:10:36 | NULL | NULL | utf8mb4_0900_ai_ci | NULL | | | | Artists | InnoDB | 10 | Dynamic | 16 | 1024 | 16384 | 0 | 0 | 0 | 17 | 2021-11-13 12:56:02 | NULL | NULL | utf8mb4_0900_ai_ci | NULL | | | +---------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+-------------+------------+--------------------+----------+----------------+---------+
information_schema.TABLES Tabel
Kami juga dapat menanyakan information_schema.TABLES tabel:
SELECT
TABLE_NAME
FROM
information_schema.TABLES
WHERE
TABLE_SCHEMA LIKE 'Music' AND TABLE_TYPE LIKE 'BASE_TABLE'; Hasil:
+------------+ | TABLE_NAME | +------------+ | Artists | | Genres | | Albums | +------------+
Menanyakan ini tanpa memfilter hasil dengan TABLE_SCHEMA mengembalikan tabel dari semua database. Demikian pula, menanyakannya tanpa memfilter menurut TABLE_TYPE mengembalikan semua jenis tabel.
mysqlshow Klien
Cara lain untuk melakukannya adalah dengan mysqlshow kegunaan.
Untuk menggunakan opsi ini, buka jendela prompt/terminal baris perintah dan jalankan perintah berikut (menggantikan music dengan database yang Anda minati):
mysqlshow music; Hasil:
+----------------+ | Tables | +----------------+ | Albums | | Artists | | Genres | | valbumsartists | | valbumsgenres | | vallalbums | | vallartists | | vallgenres | +----------------+
Ini mengembalikan tampilan dan tabel.
Outputnya hanya menampilkan nama database, tabel, atau kolom yang Anda miliki beberapa hak istimewanya.
Jika tidak ada database yang diberikan, daftar nama database akan ditampilkan. Jika tidak ada tabel yang diberikan, semua tabel yang cocok dalam database akan ditampilkan. Jika tidak ada kolom yang diberikan, semua kolom dan tipe kolom yang cocok dalam tabel akan ditampilkan.
Jika Anda mendapatkan kesalahan "akses ditolak", Anda mungkin perlu menggunakan sudo , dan masukkan kata sandi Anda saat diminta:
sudo mysqlshow music;
Utilitas ini menerima beberapa opsi, seperti --user (agar Anda dapat memberikan nama pengguna), --password (agar Anda dapat memasukkan kata sandi), --host untuk host tempat server MySQL berada, dll.
Lihat dokumentasi MySQL untuk daftar lengkap opsi.