Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

एक MySQL डेटाबेस में सभी तालिकाओं को सूचीबद्ध करने के 4 तरीके

SQL या कमांड लाइन का उपयोग करके MySQL डेटाबेस में तालिकाओं को सूचीबद्ध करने के चार तरीके नीचे दिए गए हैं।

SHOW TABLES कमांड

SHOW TABLES कमांड गैर-TEMPORARYको सूचीबद्ध करता है किसी दिए गए डेटाबेस में टेबल और दृश्य:

SHOW TABLES;

परिणाम:

+-----------------+
| Tables_in_music |
+-----------------+
| Albums          |
| Artists         |
| Genres          |
| valbumsartists  |
| valbumsgenres   |
| vallalbums      |
| vallartists     |
| vallgenres      |
+-----------------+

यह वर्तमान डेटाबेस में सभी तालिकाओं को सूचीबद्ध करता है, जिसे Music . कहा जाता है ।

हम FULL . का भी उपयोग कर सकते हैं प्रकार प्रदर्शित करने वाला दूसरा कॉलम लौटाने के लिए संशोधक:

SHOW FULL TABLES;

परिणाम:

+-----------------+------------+
| Tables_in_music | Table_type |
+-----------------+------------+
| Albums          | BASE TABLE |
| Artists         | BASE TABLE |
| Genres          | BASE TABLE |
| valbumsartists  | VIEW       |
| valbumsgenres   | VIEW       |
| vallalbums      | VIEW       |
| vallartists     | VIEW       |
| vallgenres      | VIEW       |
+-----------------+------------+

हम देख सकते हैं कि यहां सूचीबद्ध अधिकांश परिणाम वास्तव में देखे गए हैं।

यदि हम केवल बेस टेबल को वापस करना चाहते हैं, तो हम WHERE . का उपयोग कर सकते हैं Table_type . के विरुद्ध खंड कॉलम:

SHOW FULL TABLES
WHERE Table_type = 'BASE TABLE';

परिणाम:

+-----------------+------------+
| Tables_in_music | Table_type |
+-----------------+------------+
| Albums          | BASE TABLE |
| Artists         | BASE TABLE |
| Genres          | BASE TABLE |
+-----------------+------------+

SHOW TABLES एक LIKE भी स्वीकार करता है क्लॉज जिसका उपयोग परिणामों को केवल उन तालिकाओं तक सीमित करने के लिए किया जा सकता है जो किसी दिए गए पैटर्न से मेल खाते हैं:

SHOW TABLES
LIKE 'a%';

परिणाम:

+----------------------+
| Tables_in_music (a%) |
+----------------------+
| Albums               |
| Artists              |
+----------------------+

इस मामले में मैंने a . अक्षर से शुरू होने वाली सभी तालिकाएं लौटा दीं ।

SHOW TABLE STATUS कमांड

SHOW TABLE STATUS कमांड SHOW TABLES . के समान है कमांड लेकिन प्रत्येक के बारे में अधिक व्यापक जानकारी प्रदान करता है (गैर-TEMPORARY ) टेबल।

यह एक WHERE . भी स्वीकार करता है और LIKE खंड, जैसे SHOW TABLES

उदाहरण:

SHOW TABLE STATUS
LIKE 'a%';

परिणाम:

+---------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+-------------+------------+--------------------+----------+----------------+---------+
| 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 टेबल

हम information_schema.TABLES . को भी क्वेरी कर सकते हैं तालिका:

SELECT 
    TABLE_NAME
FROM 
    information_schema.TABLES 
WHERE 
    TABLE_SCHEMA LIKE 'Music' AND TABLE_TYPE LIKE 'BASE_TABLE';

परिणाम:

+------------+
| TABLE_NAME |
+------------+
| Artists    |
| Genres     |
| Albums     |
+------------+

TABLE_SCHEMA . द्वारा परिणामों को फ़िल्टर किए बिना इसे क्वेरी करना सभी डेटाबेस से टेबल लौटाता है। इसी तरह, TABLE_TYPE . द्वारा फ़िल्टर किए बिना इसे क्वेरी करना सभी प्रकार की तालिकाएँ लौटाता है।

mysqlshow ग्राहक

इसे करने का दूसरा तरीका mysqlshow . के साथ है उपयोगिता।

इस विकल्प का उपयोग करने के लिए, एक कमांड लाइन प्रॉम्प्ट/टर्मिनल विंडो खोलें और निम्नलिखित चलाएँ (music के स्थान पर) उस डेटाबेस के साथ जिसमें आप रुचि रखते हैं):

mysqlshow music;

परिणाम:

+----------------+
|     Tables     |
+----------------+
| Albums         |
| Artists        |
| Genres         |
| valbumsartists |
| valbumsgenres  |
| vallalbums     |
| vallartists    |
| vallgenres     |
+----------------+

यह दृश्य और तालिकाएँ लौटाता है।

आउटपुट केवल उन डेटाबेस, टेबल या कॉलम के नाम प्रदर्शित करता है जिनके लिए आपके पास कुछ विशेषाधिकार हैं।

यदि कोई डेटाबेस नहीं दिया जाता है, तो डेटाबेस नामों की एक सूची दिखाई जाती है। यदि कोई तालिका नहीं दी गई है, तो डेटाबेस में सभी मिलान करने वाली तालिकाएँ दिखाई जाती हैं। यदि कोई कॉलम नहीं दिया गया है, तो तालिका में सभी मेल खाने वाले कॉलम और कॉलम प्रकार दिखाए जाते हैं।

यदि आपको "पहुंच से वंचित" त्रुटि मिलती है, तो आपको sudo . का उपयोग करने की आवश्यकता हो सकती है , और प्रॉम्प्ट पर अपना पासवर्ड दर्ज करें:

sudo mysqlshow music;

यह उपयोगिता कुछ विकल्पों को स्वीकार करती है, जैसे --user (ताकि आप यूजरनेम पास कर सकें), --password (ताकि आप पासवर्ड पास कर सकें), --host होस्ट के लिए जिस पर MySQL सर्वर स्थित है, आदि।

विकल्पों की पूरी सूची के लिए MySQL के दस्तावेज़ देखें।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एसक्यूएल परिणामों में खाली तिथियों को पैड करने का सबसे सरल तरीका क्या है (या तो MySQL या पर्ल एंड पर)?

  2. MySQL 'user_id' जहां क्लॉज अस्पष्ट समस्या है

  3. पीएचपी पीडीओ:वर्णसेट, सेट नाम?

  4. AVG () - MySQL में एक कॉलम के औसत मान की गणना करें

  5. MySQL अधिकतम मेमोरी उपयोग