Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

“สร้างตารางตาราง” จะทำงานใน MySQL เนื่องจากเราไม่สามารถใช้คำสงวนเป็นชื่อตารางได้หรือไม่


ก่อนอื่นให้เราดูกรณีที่เราใช้ “สร้างตารางตาราง” ในขณะที่สร้างตาราง ข้อผิดพลาดจะเกิดขึ้น -

mysql> สร้างตารางตาราง ( Id int ไม่ใช่ NULL AUTO_INCREMENT คีย์หลัก, FirstName varchar(100));

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้เช่นข้อผิดพลาด -

ข้อผิดพลาด 1064 (42000):คุณมีข้อผิดพลาดในไวยากรณ์ SQL ของคุณ ตรวจสอบคู่มือที่สอดคล้องกับเวอร์ชันเซิร์ฟเวอร์ MySQL ของคุณสำหรับไวยากรณ์ที่ถูกต้องที่จะใช้ใกล้กับ 'table ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName varchar(100))' ที่บรรทัด 1

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

ให้เราสร้างตารางอีกครั้งและตั้งชื่อตารางเป็น `table' พร้อม backticks -

mysql> สร้างตาราง `table` ( Id int ไม่ใช่ NULL AUTO_INCREMENT PRIMARY KEY, FirstName varchar(100)); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.81 วินาที)

แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -

mysql> แทรกลงในค่า `table` (FirstName) ('Chris'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที) mysql> แทรกลงในค่า 'table' (FirstName) ('Robert'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที) mysql> แทรกลงในค่า 'table' (ชื่อแรก) ('David'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที) mysql> แทรกลงในค่า 'table' (FirstName) ('Mike');แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.13 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -

mysql> เลือก *จาก `table`;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+----+-----------+| รหัส | ชื่อจริง |+----+-----------+| 1 | คริส || 2 | โรเบิร์ต || 3 | เดวิด || 4 | Mike |+----+-----------+4 แถวในชุด (0.00 วินาที)