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

แก้ไขข้อผิดพลาด MySQL 1075 (42000):นิยามตารางไม่ถูกต้อง สามารถมีคอลัมน์อัตโนมัติได้เพียงคอลัมน์เดียวและต้องกำหนดเป็นคีย์


ในการแก้ไขข้อผิดพลาดนี้ คุณต้องเพิ่ม PRIMARY KEY ลงในฟิลด์ auto_increment ให้เราดูว่าข้อผิดพลาดนี้เกิดขึ้นได้อย่างไร -

ที่นี่ เรากำลังสร้างตารางและเกิดข้อผิดพลาดเดียวกัน -

mysql> สร้างตาราง DemoTable( StudentId int ไม่ใช่ NULL AUTO_INCREMENT, StudentName varchar(40), StudentAge int);ERROR 1075 (42000) :นิยามตารางไม่ถูกต้อง สามารถมีคอลัมน์อัตโนมัติได้เพียงคอลัมน์เดียวและต้องกำหนดเป็นคีย์

ในการแก้ไขข้อผิดพลาดข้างต้น คุณต้องเพิ่ม PRIMARY KEY ด้วย AUTO_INCREMENT ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable ( StudentId int ไม่ใช่ NULL AUTO_INCREMENT PRIMARY KEY, StudentName varchar (40), StudentAge int); แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (1.01 วินาที)

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

mysql> แทรกลงในค่า DemoTable (StudentName,StudentAge) ('Chris Brown', 19); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.30 วินาที) mysql> แทรกลงในค่า DemoTable (StudentName, StudentAge) ('David Miller', 18); ตกลง แบบสอบถาม 1 แถวได้รับผลกระทบ (0.20 วินาที) mysql> แทรกลงในค่า DemoTable (StudentName, StudentAge) ('John Doe', 20); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.11 วินาที)

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

mysql> เลือก *จาก DemoTable;

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

<ก่อนหน้า>+-----------+--------------+-----------+| รหัสนักศึกษา | ชื่อนักเรียน | StudentAge |+-----------+--------------+-----------+| 1 | คริส บราวน์ | 19 || 2 | เดวิด มิลเลอร์ | 18 || 3 | จอห์น โด | 20 |+-----------+-------------+-----------+3 แถวในชุด (0.00 วินาที )