เพื่อให้เข้าใจว่ามีคอลัมน์อยู่หรือไม่ เรามีวิธีการดังต่อไปนี้ -
- ด้วยความช่วยเหลือของคำสั่ง DESC
- การใช้คำสั่ง SHOW
อันดับแรก เราจะสร้างตารางที่มีคอลัมน์ -
mysql> สร้างตาราง ColumnExistDemo-> (-> UniqueId int,-> UniqueName varchar(200),-> UniqueAddress varchar(200)-> ); แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.57 วินาที)
ในแนวทางแรก เราจะได้ชื่อคอลัมน์ทั้งหมดพร้อมข้อมูลที่มีความหมาย ไวยากรณ์มีดังนี้ −
DESC yourTableName;
ให้เราใช้แบบสอบถามข้างต้นเพื่อตรวจสอบว่าชื่อคอลัมน์มีอยู่หรือไม่ อย่างไรก็ตามวิธีนี้ไม่ดีเพราะแสดงคอลัมน์ทั้งหมด
mysql> DESC ColumnExistDemo;
ต่อไปนี้เป็นผลลัพธ์
<ก่อนหน้า>+---------------+--------------+------+-----+-- ---------------+| สนาม | พิมพ์ | Null | คีย์ | ค่าเริ่มต้น | พิเศษ |+--------------+--------------+------+----+--- ------+-------+| UniqueId | int(11) | ใช่ | | NULL | || UniqueName | varchar(200) | ใช่ | | NULL | | | UniqueAddress | varchar(200) | ใช่ | | NULL | |+--------------+--------------+------+-----+---- -----+-------+3 แถวในชุด (0.01 วินาที)วิธีที่สองดีกว่าเพราะเราสามารถตรวจสอบคอลัมน์เดียวได้ ไวยากรณ์มีดังนี้ −
SHOW COLUMNS จาก `yourTableName` เช่น 'yourColumnName';
ตอนนี้ ฉันกำลังใช้แบบสอบถามด้านบนเพื่อตรวจสอบว่ามีคอลัมน์อยู่หรือไม่ แบบสอบถามมีดังต่อไปนี้ −
mysql> SHOW COLUMNS จาก `ColumnExistDemo` เช่น 'UniqueName'
ต่อไปนี้เป็นผลลัพธ์
<ก่อนหน้า>+------------+--------------+------+-----+----- ----+-------+| สนาม | พิมพ์ | Null | คีย์ | ค่าเริ่มต้น | พิเศษ |+-----------+-------------+------+----+------ -----------+| UniqueName | varchar(200) | ใช่ | | NULL | |+------------+-------------+------+-----+------- ---+------- +1 แถวในชุด (0.00 วินาที)