วิธีดูข้อมูลและโครงสร้างของตาราง MySQL (SHOW TABLES, DESCRIBE, SELECT, INFORMATION_SCHEMA)

目次

1. บทนำ

เมื่อจัดการฐานข้อมูลด้วย MySQL มีหลายสถานการณ์ที่คุณต้องการ “ตรวจสอบว่าอะไรอยู่ในตาราง” ตัวอย่างเช่น คุณอาจต้องการยืนยันว่าข้อมูลทดสอบถูกจัดเก็บอย่างถูกต้อง หรือยืนยันว่าข้อมูลที่คาดหวังกำลังถูกแทรกขณะพัฒนาแอปพลิเคชัน การสามารถตรวจสอบเนื้อหาตารางได้อย่างรวดเร็วเป็นสิ่งสำคัญอย่างยิ่ง

ในการพัฒนาและการดำเนินงานประจำวัน คุณมักต้องการข้อมูลเช่น “โครงสร้างของตารางเป็นอย่างไร?” หรือ “ประเภทคอลัมน์และข้อจำกัดคืออะไร?” อย่างไรก็ตาม หากคุณไม่คุ้นเคยกับ MySQL การตรวจสอบเนื้อหาและโครงสร้างของตารางอาจดูไม่ชัดเจนอย่างน่าประหลาดใจ

ในบทความนี้ เราจะอธิบายทุกอย่างตั้งแต่พื้นฐานของการตรวจสอบเนื้อหาและโครงสร้างของตารางใน MySQL ไปจนถึงคำสั่งที่ใช้บ่อยและเทคนิคขั้นสูง รวมถึงข้อผิดพลาดทั่วไปและการแก้ไขปัญหา คู่มือนี้มีข้อมูลที่เป็นประโยชน์สำหรับผู้เริ่มต้นและผู้ที่ใช้ MySQL อย่างสม่ำเสมอ—ดังนั้นกรุณาใช้เป็นอ้างอิง

2. ข้อกำหนดเบื้องต้น: วิธีเชื่อมต่อกับ MySQL

เพื่อตรวจสอบเนื้อหาและโครงสร้างของตาราง MySQL คุณต้องเชื่อมต่อกับเซิร์ฟเวอร์ MySQL ก่อน ที่นี่เราจะอธิบายวิธีเข้าสู่ระบบ MySQL จากบรรทัดคำสั่ง (Terminal หรือ Command Prompt) และวิธีเลือกฐานข้อมูล

วิธีเข้าสู่ระบบ MySQL

เพื่อเชื่อมต่อกับ MySQL ให้ใช้คำสั่งต่อไปนี้

mysql -u username -p

แทนที่ “username” ด้วยชื่อผู้ใช้ MySQL ของคุณ เมื่อคุณรันคำสั่ง ระบบจะขอให้คุณใส่รหัสผ่าน—พิมพ์รหัสผ่านที่ถูกต้อง

เลือกฐานข้อมูล

หลังจากเข้าสู่ระบบสำเร็จ คุณจะเห็นพรอมต์ของ MySQL (mysql>) เพื่อเลือกฐานข้อมูลที่คุณต้องการทำงาน ให้พิมพ์คำสั่งต่อไปนี้

USE database_name;

หลังจากนี้ การดำเนินการต่อไปทั้งหมดจะทำงานกับฐานข้อมูลที่เลือกไว้
หากคุณลืมขั้นตอนนี้ คุณอาจได้รับข้อผิดพลาดเช่น “No database selected” ดังนั้นควรระมัดระวัง

วิธีแสดงรายการฐานข้อมูล

หากคุณต้องการดูรายการฐานข้อมูลที่มีอยู่บนเซิร์ฟเวอร์ คุณสามารถใช้คำสั่งต่อไปนี้

SHOW DATABASES;

คำสั่งนี้จะแสดงชื่อฐานข้อมูลทั้งหมดในรูปแบบรายการ ตามต้องการให้ยืนยันชื่อฐานข้อมูลเป้าหมายที่นี่และสลับโดยใช้ USE database_name;

3. ตรวจสอบรายการตาราง (แสดงรายการตาราง)

หลังจากเชื่อมต่อกับ MySQL และเลือกฐานข้อมูลเป้าหมาย คุณมักต้องการยืนยัน “มีตารางอะไรบ้าง” ที่นี่เราจะแนะนำวิธีพื้นฐานในการแสดงรายการตาราง รวมถึงเทคนิคที่เป็นประโยชน์เพื่อกรองให้เหลือเฉพาะตารางที่คุณต้องการ

คำสั่งพื้นฐานเพื่อแสดงรายการตาราง

เพื่อแสดงรายการตาราง ให้ใช้คำสั่งต่อไปนี้

SHOW TABLES;

การรันคำสั่งนี้จะแสดงรายการชื่อทุกตารางในฐานข้อมูลที่เลือกอยู่ในขณะนั้น
ตัวอย่างเช่น คุณอาจเห็นชื่อตารางเช่น “users”, “orders”, และ “products” แสดงเป็นแนวตั้ง

ตรวจสอบรายการตารางในฐานข้อมูลอื่น

หากคุณต้องการตรวจสอบรายการตารางของฐานข้อมูลอื่นที่ไม่ได้เลือกอยู่ในขณะนั้น ให้เขียนคำสั่งดังนี้

SHOW TABLES FROM database_name;

ด้วยวิธีนี้ คุณสามารถตรวจสอบตารางในฐานข้อมูลที่ระบุได้อย่างรวดเร็วโดยไม่ต้องสลับฐานข้อมูลด้วยคำสั่ง USE ทุกครั้ง

ค้นหา (กรอง) ชื่อตารางเฉพาะ

เมื่อมีตารางจำนวนมาก คุณอาจต้องการหาตารางเป้าหมายอย่างรวดเร็ว ในกรณีนั้นคุณสามารถกรองด้วยตัวเลือก LIKE

SHOW TABLES LIKE 'search_word%';

เช่น หากคุณต้องการแสดงเฉพาะตารางที่ขึ้นต้นด้วย “user” ให้ระบุเป็น SHOW TABLES LIKE 'user%';

นอกจากนี้ ขึ้นอยู่กับเวอร์ชันของ MySQL คุณอาจใช้เงื่อนไข SHOW TABLES WHERE ได้

SHOW TABLES WHERE Tables_in_database_name LIKE '%keyword%';

การแสดงรายการตารางเป็นการดำเนินการพื้นฐานของ MySQL แต่การใช้ความคิดเล็กน้อยสามารถเพิ่มประสิทธิภาพการจัดการและการค้นหาได้อย่างมาก

4. ตรวจสอบโครงสร้างตาราง (รายการคอลัมน์)

ก่อนตรวจสอบเนื้อหาในตาราง การเข้าใจว่า “คอลัมน์ใดบ้างที่มีอยู่และประเภทข้อมูลและข้อจำกัดใดที่ตั้งไว้” เป็นสิ่งสำคัญมาก การรู้โครงสร้างของตารางช่วยให้คุณดึงและแก้ไขข้อมูลได้อย่างถูกต้อง และยังช่วยป้องกันปัญหาระหว่างการพัฒนาระบบและการดำเนินงาน

Basic command: DESCRIBE (DESC)

คำสั่งที่ใช้บ่อยที่สุดในการตรวจสอบโครงสร้างของตารางคือ DESCRIBE คุณยังสามารถใช้รูปแบบย่อ DESC ได้เช่นกัน

DESCRIBE table_name;

or

DESC table_name;

เมื่อคุณรันคำสั่งนี้ MySQL จะแสดงรายการชื่อคอลัมน์, ประเภทข้อมูล, ข้อจำกัด NULL, ข้อมูลคีย์หลัก, และอื่น ๆ

รายการหลักที่แสดง:

  • Field (ชื่อคอลัมน์)
  • Type (ประเภทข้อมูล)
  • Null (ว่าต้องอนุญาตให้เป็น NULL หรือไม่)
  • Key (คีย์หลัก, คีย์ต่างประเทศ, ฯลฯ)
  • Default (ค่าตั้งต้น)
  • Extra (ข้อมูลเพิ่มเติม เช่น auto‑increment)

SHOW COLUMNS command

SHOW COLUMNS FROM table_name; แสดงเนื้อหาเกือบเดียวกับ DESCRIBE ขึ้นอยู่กับสถานการณ์ การใช้คำสั่งนี้ก็ถือว่าโอเคเช่นกัน

If you want more detailed information

หากคุณต้องการข้อมูลคอลัมน์ที่ละเอียดมากขึ้น ให้ใช้ SHOW FULL COLUMNS FROM table_name; ซึ่งรวมข้อมูลเพิ่มเติมเช่นการจัดเรียง (Collation) และสิทธิ์ (Privileges)

When table structure checks are useful

  • เข้าใจ “คอลัมน์ใดบ้างที่มีอยู่” ระหว่างการพัฒนาใหม่หรือการบำรุงรักษา
  • ตรวจสอบประเภทคอลัมน์, ความเป็น NULL, และข้อมูลคีย์หลักเมื่อสำรวจระบบที่มีอยู่หรือทำการบูรณาการข้อมูล
  • ชัดเจนว่า “ประเภทข้อมูลใดจะถูกจัดเก็บ” เมื่อเขียนโค้ด

เพื่อให้การตรวจสอบเนื้อหาตารางทำได้อย่างปลอดภัยและแม่นยำ ให้เริ่มจากการยืนยันโครงสร้างของตารางก่อน

5. ตรวจสอบเนื้อหาตาราง (ข้อมูล)

เมื่อคุณเข้าใจโครงสร้างของตารางแล้ว ขั้นตอนต่อไปคือการตรวจสอบว่ามีข้อมูลอะไรบ้างที่ถูกจัดเก็บในตาราง ใน MySQL คุณสามารถดึงข้อมูลจากตารางได้อย่างง่ายดายโดยใช้คำสั่ง SELECT

View all data

หากคุณต้องการแสดงแถวทั้งหมดในตาราง ให้เขียนคิวรีดังนี้:

SELECT * FROM table_name;

การรันคำสั่งนี้จะแสดงแถวทั้งหมด (บันทึก) ในตาราง
อย่างไรก็ตาม หากตารางมีข้อมูลจำนวนมาก การแสดงทั้งหมดในครั้งเดียวอาจอ่านยาก—ดังนั้นควรระมัดระวัง

Select only the columns you need

หากคุณไม่ต้องการทุกคอลัมน์และต้องการดูเฉพาะข้อมูลบางส่วน ให้ระบุชื่อคอลัมน์ที่ต้องการดึงข้อมูล:

SELECT column1, column2 FROM table_name;

นี่จะแสดงเฉพาะคอลัมน์ที่ระบุ ทำให้การตรวจสอบหรือสรุปข้อมูลง่ายขึ้น

Filter data by conditions

หากคุณต้องการตรวจสอบเฉพาะข้อมูลที่ตรงกับเงื่อนไขบางอย่าง ให้ใช้เงื่อนไข WHERE:

SELECT * FROM table_name WHERE column_name = 'value';

ตัวอย่างเช่น หากคุณต้องการตรวจสอบ “เฉพาะผู้ใช้ที่มี id = 10” ในตาราง users ให้เขียนดังนี้:
SELECT * FROM users WHERE id = 10;

หากคุณต้องการค้นหาโดยใช้การจับคู่บางส่วน ให้ใช้ตัวดำเนินการ LIKE:

SELECT * FROM table_name WHERE column_name LIKE 'A%';

ในตัวอย่างนี้ จะมีการแสดงเฉพาะบันทึกที่ค่าคอลัมน์เริ่มต้นด้วย “A” เท่านั้น

Limit the number of rows returned (LIMIT clause)

หากตารางมีจำนวนแถวมากเป็นจำนวนมาก การจำกัดจำนวนผลลัพธ์ที่แสดงโดยใช้คลอส LIMIT ก็เป็นสิ่งสำคัญเช่นกัน:

SELECT * FROM table_name LIMIT 10;

นี่จะแสดงเฉพาะ 10 แถวแรก
นอกจากนี้ คุณสามารถใช้ OFFSET เพื่อระบุแถวที่เริ่มต้นจาก:

SELECT * FROM table_name LIMIT 10 OFFSET 20;

นี่จะดึงข้อมูล 10 แถว เริ่มจากแถวที่ 21 ซึ่งเป็นประโยชน์สำหรับการแบ่งหน้าและตรวจสอบชุดข้อมูลขนาดใหญ่

6. Get More Detailed Table Information

ใน MySQL มีคำสั่งไม่เพียงเพื่อตรวจสอบเนื้อหาและโครงสร้างของตารางเท่านั้น แต่ยังเพื่อดึงข้อมูลที่ละเอียดมากขึ้น ที่นี่เราจะอธิบายวิธีตรวจสอบสถานะตาราง รายละเอียดการสร้าง ขนาดตาราง และอื่น ๆ

Check table status (SHOW TABLE STATUS)

SHOW TABLE STATUS;

การรันคำสั่งนี้จะแสดงรายการข้อมูลเช่นต่อไปนี้สำหรับทุกตารางในฐานข้อมูลที่เลือกอยู่ในขณะนี้:

  • ชื่อของตาราง (Name)
  • เอนจิน (Engine)
  • จำนวนแถว (Rows)
  • ขนาดตาราง (Data_length, Index_length)
  • เวลาสร้าง (Create_time)
  • เวลาปรับปรุงล่าสุด (Update_time)
  • การจัดเรียง (Collation) เป็นต้น.

หากคุณต้องการตรวจสอบเฉพาะตารางหนึ่ง ให้ระบุแบบนี้:

SHOW TABLE STATUS LIKE 'table_name';

SQL ที่ใช้สร้างตาราง (SHOW CREATE TABLE)

หากคุณต้องการทราบว่า “SQL ใดที่ใช้สร้างตารางนี้?” คำสั่ง SHOW CREATE TABLE มีประโยชน์:

SHOW CREATE TABLE table_name;

เมื่อทำการรัน มันจะส่งออกคำสั่ง CREATE TABLE ที่ใช้สร้างตารางนั้นอย่างแม่นยำ
คำสั่งนี้มีประโยชน์อย่างมากสำหรับการย้ายตาราง, การสำรองข้อมูล, และการสร้างตารางเดียวกันในสภาพแวดล้อมอื่น.

เมื่อข้อมูลตารางโดยละเอียดมีประโยชน์

  • เข้าใจขนาดตารางและจำนวนแถวเพื่อการปรับปรุงประสิทธิภาพและการจัดการพื้นที่จัดเก็บ
  • ตรวจสอบ DDL (คำนิยามตาราง) เป็นเอกสารอ้างอิงสำหรับการย้ายและการปรับโครงสร้างใหม่
  • ตรวจสอบประเภทเอนจิน, ชุดอักขระ, และข้อมูลดัชนีเพื่อช่วยระบุสาเหตุของปัญหาระบบ

ด้วยการเชี่ยวชาญคำสั่งเหล่านี้ คุณสามารถขยายขอบเขตการทำงานใน MySQL และการแก้ปัญหาได้อย่างมาก.

7. การตรวจสอบผ่าน INFORMATION_SCHEMA (ขั้นสูง)

MySQL มีฐานข้อมูลพิเศษชื่อ INFORMATION_SCHEMA ซึ่งเก็บข้อมูลเมตาดาต้าหลากหลายประเภทเกี่ยวกับเซิร์ฟเวอร์ MySQL ทั้งหมด รวมถึงข้อมูลตาราง รายละเอียดคอลัมน์ ดัชนี สิทธิ์การเข้าถึง และอื่น ๆ ด้วยการใช้ฐานข้อมูลนี้ คุณสามารถดึงข้อมูลตารางและคอลัมน์ได้อย่างยืดหยุ่นและละเอียดมากขึ้น.

ดึงข้อมูลตารางโดยใช้ INFORMATION_SCHEMA

ตัวอย่างเช่น หากคุณต้องการดึงรายการชื่อของทุกตารางในฐานข้อมูลเฉพาะ คุณสามารถใช้ SQL ต่อไปนี้:

SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'database_name';

SQL นี้มีประโยชน์เมื่อคุณต้องการตรวจสอบตารางจำนวนมากด้วยเครื่องมือการจัดการหรือเก็บข้อมูลโดยอัตโนมัติด้วยสคริปต์.

ดึงข้อมูลคอลัมน์และดัชนี

คุณสามารถดึงข้อมูลคอลัมน์ได้ในลักษณะเดียวกัน:

SELECT COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_KEY
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'database_name'
  AND TABLE_NAME = 'table_name';

คุณยังสามารถดึงรายละเอียดดัชนี, ข้อจำกัด, คีย์ต่างประเทศ, และเมตาดาต้าอื่น ๆ ได้อย่างง่ายดายโดยใช้ INFORMATION_SCHEMA.

ความสัมพันธ์กับ ANALYZE TABLE

สำหรับการปรับจูนประสิทธิภาพและการรีเฟรชสถิติ คำสั่ง ANALYZE TABLE จะถูกใช้
เมื่อคุณรันคำสั่งนี้ สถิติของตารางจะได้รับการอัปเดต และค่าทางสถิติที่ดึงจาก INFORMATION_SCHEMA (เช่น จำนวนแถวโดยประมาณ) จะแม่นยำยิ่งขึ้น.

ANALYZE TABLE table_name;

เมื่อควรใช้ INFORMATION_SCHEMA

  • เมื่อคุณต้องการดึงข้อมูลหลายตารางหรือหลายคอลัมน์พร้อมกัน
  • เมื่อทำการตรวจสอบโครงสร้างตารางและคอลัมน์ในกระบวนการแบบแบตช์หรือสคริปต์อัตโนมัติ
  • เมื่อคุณต้องการข้อมูลโดยละเอียดเช่นดัชนี, คีย์ต่างประเทศ, หรือคอมเมนต์ของตาราง

INFORMATION_SCHEMA เป็นเครื่องมือที่ทรงพลังสำหรับทำความเข้าใจ MySQL อย่างลึกซึ้งและการดำเนินงานอย่างมีประสิทธิภาพ ใช้มันให้เต็มที่ในงานการจัดการประจำวันและการพัฒนาระบบ.

8. เครื่องมือ CLI และทางลัด

เมื่อทำการตรวจสอบเนื้อหาและโครงสร้างของตารางใน MySQL การรู้จักคำสั่งและตัวเลือกของ command-line interface (CLI) ที่สะดวกสามารถเพิ่มประสิทธิภาพการทำงานของคุณได้อย่างมาก ที่นี่เราจะแนะนำเครื่องมือ CLI ที่ใช้บ่อยและทางลัดที่เป็นประโยชน์.

คำสั่ง mysqlshow

MySQL มีเครื่องมือ CLI เฉพาะที่เรียกว่า mysqlshow
มันถูกออกแบบมาสำหรับการแสดงรายการฐานข้อมูลและตาราง และช่วยให้คุณตรวจสอบข้อมูลได้อย่างรวดเร็วโดยไม่ต้องเข้าสู่ MySQL แบบโต้ตอบ.

แสดงรายการฐานข้อมูล

mysqlshow -u username -p

แสดงตารางในฐานข้อมูลเฉพาะ

mysqlshow -u username -p database_name

แสดงข้อมูลคอลัมน์สำหรับตารางเฉพาะ

mysqlshow -u username -p database_name table_name

ด้วยคำสั่งสั้น ๆ เหล่านี้ คุณสามารถตรวจสอบโครงสร้างและการมีอยู่ได้อย่างรวดเร็ว ทำให้สะดวกสำหรับการจัดการเซิร์ฟเวอร์และการเขียนสคริปต์.

ทำให้ผลลัพธ์อ่านง่ายขึ้นด้วยตัวเลือก “\G”

โดยปกติเมื่อคุณรัน SQL ใน MySQL ผลลัพธ์จะแสดงในรูปแบบตารางแนวนอน อย่างไรก็ตาม หากมีหลายคอลัมน์หรือข้อมูลจำนวนมาก การใช้ “\G” จะทำให้ผลลัพธ์แสดงในแนวตั้ง ทำให้อ่านง่ายขึ้นมาก.

ตัวอย่างการใช้งาน

SELECT * FROM table_name\G

เมื่อเขียนในลักษณะนี้ แต่ละแถวจะถูกแสดงในแนวตั้ง โดยชื่อคอลัมน์และค่าจะแสดงเป็นคู่กัน สิ่งนี้มีประโยชน์อย่างยิ่งเมื่อทำการตรวจสอบโครงสร้างตารางหรือทบทวนรายละเอียดของบันทึกเดียวอย่างละเอียด.

เทคนิค CLI ที่เป็นประโยชน์อื่น ๆ

  • ใช้ประวัติคำสั่ง คุณสามารถใช้ปุ่มลูกศรขึ้นและลงเพื่อเรียกคำสั่งที่เคยรันก่อนหน้า ทำให้ไม่ต้องพิมพ์คำสั่งเดียวกันซ้ำหลายครั้ง.
  • การเติมเต็มด้วย Tab เมื่อพิมพ์ชื่อเทเบิลหรือคอลัมน์ ให้กดปุ่ม Tab หลังจากพิมพ์ส่วนหนึ่งของชื่อเพื่อให้ระบบเติมเต็มอัตโนมัติ ช่วยลดข้อผิดพลาดจากการสะกดและการพิมพ์.

โดยการเชี่ยวชาญเครื่องมือและทางลัดของ CLI การทำงานกับ MySQL จะสะดวกและมีประสิทธิภาพมากขึ้น ลองนำไปใช้ในงานประจำวันและงานพัฒนาของคุณ.

9. ข้อผิดพลาดทั่วไปและวิธีแก้ไข

เมื่อทำการตรวจสอบเนื้อหาและโครงสร้างของตารางใน MySQL จะมีข้อผิดพลาดทั่วไปหลายอย่างที่ผู้เริ่มต้นและผู้ใช้ที่มีประสบการณ์เจออย่างน้อยหนึ่งครั้ง ที่นี่เราจะอธิบายข้อผิดพลาดทั่วไป สาเหตุของมัน และวิธีแก้ไขอย่างชัดเจน.

ไม่ได้เลือกฐานข้อมูล

ข้อความแสดงข้อผิดพลาด

ERROR 1046 (3D000): No database selected

สาเหตุและวิธีแก้
ข้อผิดพลาดนี้เกิดขึ้นเมื่อคุณพยายามทำงานกับตารางโดยไม่ได้เลือกฐานข้อมูลก่อน ตรวจสอบให้แน่ใจว่าได้ระบุฐานข้อมูลเป้าหมายล่วงหน้าด้วยการใช้:

USE database_name;

ฐานข้อมูลไม่รู้จัก

ข้อความแสดงข้อผิดพลาด

ERROR 1049 (42000): Unknown database 'database_name'

สาเหตุและวิธีแก้
เหตุการณ์นี้เกิดขึ้นเมื่อฐานข้อมูลที่ระบุไม่มีอยู่ สาเหตุทั่วไปรวมถึงการสะกดผิด การใช้ตัวพิมพ์ใหญ่/เล็กไม่ถูกต้อง หรือฐานข้อมูลยังไม่ได้สร้าง ใช้คำสั่งต่อไปนี้เพื่อยืนยันชื่อที่ถูกต้อง:

SHOW DATABASES;

ข้อผิดพลาดเรื่องสิทธิ์ (ไม่มีผลลัพธ์แสดงเมื่อใช้ SHOW TABLES / SHOW COLUMNS)

สถานการณ์ตัวอย่าง

  • ไม่ปรากฏตารางใดเมื่อรัน SHOW TABLES
  • ไม่แสดงข้อมูลใดเมื่อรัน SHOW COLUMNS

สาเหตุและวิธีแก้
เกิดขึ้นเมื่อผู้ใช้ MySQL ไม่มีสิทธิ์เพียงพอสำหรับฐานข้อมูลหรือเทเบิลนั้น ขอให้ผู้ดูแลระบบ (เช่นผู้ใช้ root) มอบสิทธิ์ที่จำเป็น หรือกำหนดสิทธิ์โดยใช้คำสั่ง GRANT ที่เหมาะสม.

คืนค่ามากเกินไป ทำให้ผลลัพธ์อ่านยาก

สถานการณ์ตัวอย่าง

  • การรัน SELECT * FROM table_name; ทำให้แสดงผลหลายหมื่นแถวพร้อมกัน

วิธีแก้
ใช้เงื่อนไข LIMIT เพื่อลดจำนวนแถวที่คืนค่า ตัวอย่าง:

SELECT * FROM table_name LIMIT 10;

ชื่อเทเบิลหรือคอลัมน์สะกดผิด

สถานการณ์ตัวอย่าง

  • คอลัมน์ ‘column_name’ ไม่รู้จักใน ‘field list’
  • ตาราง ‘database_name.table_name’ ไม่อยู่

วิธีแก้
เพื่อหลีกเลี่ยงการสะกดผิด ให้ใช้ SHOW TABLES, SHOW COLUMNS หรือฟีเจอร์การเติมเต็มด้วย Tab ใน CLI.

ส่วนใหญ่ของข้อผิดพลาดเหล่านี้สามารถหลีกเลี่ยงได้โดยการตรวจสอบพื้นฐานอย่างระมัดระวัง เมื่อเกิดปัญหา ให้ตรวจสอบจุดที่กล่าวมาข้างต้นทีละขั้นตอน.

10. สรุป

มีวิธีการหลายแบบสำหรับการดำเนินการพื้นฐานของ “การตรวจสอบเนื้อหาตาราง” ใน MySQL ในบทความนี้ เราได้ครอบคลุมทุกอย่างตั้งแต่การแสดงรายการตารางและตรวจสอบโครงสร้างตารางโดยละเอียด ไปจนถึงการดึงข้อมูลจริง รวมถึงการรับข้อมูลเมตาแบบขั้นสูงและข้อมูลการจัดการโดยละเอียด.

  • ใช้ SHOW TABLES เพื่อแสดงรายการตาราง,
  • ใช้ DESCRIBE (DESC) หรือ SHOW COLUMNS เพื่อตรวจสอบข้อมูลคอลัมน์และโครงสร้าง,
  • ใช้คำสั่ง SELECT เพื่อดึงข้อมูลจริง,
  • ใช้ SHOW TABLE STATUS, SHOW CREATE TABLE, และ INFORMATION_SCHEMA เพื่อตรวจสอบข้อมูลการจัดการโดยละเอียดและ DDL เมื่อจำเป็น,
  • และปรับปรุงประสิทธิภาพการพัฒนาและการดำเนินงานประจำวันด้วยเครื่องมือ CLI, ทางลัด, และความรู้การแก้ปัญหา.

โดยการเชี่ยวชาญเทคนิคเหล่านี้ การดำเนินงานฐานข้อมูล MySQL จะปลอดภัยและเชื่อถือได้มากขึ้น และข้อผิดพลาดหรือปัญหาต่าง ๆ สามารถลดลงได้ เนื้อหานี้เป็นประโยชน์สำหรับผู้เริ่มต้น ผู้ใช้ระดับกลาง และผู้เชี่ยวชาญที่ทำงานในสภาพแวดล้อมจริง นำเทคนิคเหล่านี้ไปใช้ในการพัฒนาและงานดูแลระบบของคุณในอนาคต.

11. คำถามที่พบบ่อย (FAQ)

Q1. ฉันจะตรวจสอบข้อมูลตารางโดยใช้เงื่อนไขเฉพาะได้อย่างไร?

A:
ใช้เงื่อนไข WHERE ดังนี้:

SELECT * FROM table_name WHERE condition;

ตัวอย่างเช่น:

SELECT * FROM users WHERE age > 30;

นี่จะดึงเฉพาะผู้ใช้ที่อายุเกิน 30 ปี คุณยังสามารถรวมกับเงื่อนไข LIMIT เพื่อควบคุมจำนวนแถวที่แสดงได้.

Q2. ฉันใช้คำสั่ง SHOW TABLES แต่ไม่มีตารางปรากฏ ทำไม?

A:
สาเหตุที่เป็นไปได้ ได้แก่:
(1) คุณไม่ได้เลือกฐานข้อมูล (USE database_name; ขาดหาย),
(2) ชื่อฐานข้อมูลที่ระบุไม่ถูกต้อง,
(3) สิทธิ์ไม่เพียงพอ.
ใช้ SHOW DATABASES; เพื่อตรวจสอบชื่อฐานข้อมูลและตรวจสอบว่าคุณมีสิทธิ์ที่เหมาะสมหรือไม่.

Q3. ฉันจะดูโครงสร้างตารางในรูปแบบ DDL (คำสั่ง CREATE) ได้อย่างไร?

A:
รันคำสั่งต่อไปนี้:

SHOW CREATE TABLE table_name;

มันจะแสดงคำสั่ง CREATE TABLE ที่ใช้สร้างตารางอย่างแม่นยำ ซึ่งเป็นประโยชน์สำหรับการย้ายตารางและการสำรองข้อมูล.

Q4. มีข้อมูลในตารางมากเกินไปจนไม่สามารถดูทั้งหมดได้ในครั้งเดียว.

A:
ใช้เงื่อนไข LIMIT:

SELECT * FROM table_name LIMIT 10;

คุณยังสามารถรวมกับ OFFSET เพื่อตรวจสอบช่วงข้อมูลเฉพาะอย่างเป็นขั้นตอนได้.

Q5. INFORMATION_SCHEMA คืออะไรและควรใช้เมื่อใด?

A:
INFORMATION_SCHEMA เป็นฐานข้อมูลพิเศษที่เก็บเมตาดาต้าของ MySQL ซึ่งมีประโยชน์อย่างยิ่งเมื่อคุณต้องการดึงหรือจัดการข้อมูลจำนวนมากเกี่ยวกับตาราง, คอลัมน์, ดัชนี หรือสิทธิ์ เนื่องจากสามารถสอบถามโดยตรงด้วย SQL ทำให้เหมาะสำหรับการทำอัตโนมัติและการรายงาน.

Q6. ฉันจะแสดงผลลัพธ์ในแนวตั้งได้อย่างไร?

A:
เพิ่ม “\G” ที่ส่วนท้ายของคำสั่ง SQL ของคุณ
ตัวอย่าง:

SELECT * FROM table_name\G

มันจะแสดงแต่ละบันทึกในแนวตั้ง โดยแสดงชื่อคอลัมน์และค่าต่าง ๆ ในรูปแบบคู่ที่อ่านง่าย.