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

สองคอลัมน์เป็นคีย์หลักพร้อมการเพิ่มอัตโนมัติใน MySQL?


บรรลุสิ่งนี้โดยใช้ MyISAM Engine ต่อไปนี้คือตัวอย่างสองคอลัมน์ที่เป็นคีย์หลักที่มีการเพิ่มขึ้นอัตโนมัติ

การสร้างตารางที่มีสองคอลัมน์เป็นคีย์หลัก -

mysql> สร้างตาราง TwoPrimaryKeyTableDemo -> ( -> ผลลัพธ์ ENUM('First','Second','Third','Fail') ไม่ใช่ null, -> StudentId int ไม่ null auto_increment, -> StudentName varchar(200) ไม่เป็นค่าว่าง -> คีย์หลัก (ผลลัพธ์, รหัสนักศึกษา) -> ) -> ENGINE=MyISAM; ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.20 วินาที)

การแทรกเรคคอร์ดลงในตาราง

mysql> แทรกลงในค่า TwoPrimaryKeyTableDemo(StudentName,Result) ('John','Fail');การสืบค้นตกลง 1 แถวได้รับผลกระทบ (0.42 วินาที)mysql> แทรกลงใน TwoPrimaryKeyTableDemo (StudentName,Result)values ​​('Carol', 'ก่อน');แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.09 วินาที) mysql> แทรกลงในค่า TwoPrimaryKeyTableDemo (StudentName, ผลลัพธ์) ('Smith', 'Third'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.05 วินาที) mysql> แทรกลงใน TwoPrimaryKeyTableDemo (StudentName,Result) ค่า ('Johnson','Second');Query OK, 1 แถวได้รับผลกระทบ (0.03 วินาที)mysql> แทรกลงใน TwoPrimaryKeyTableDemo (StudentName,Result) ค่า ('Johnson','Third'); แบบสอบถามตกลง , 1 แถวได้รับผลกระทบ (0.06 วินาที)mysql> แทรกลงในค่า TwoPrimaryKeyTableDemo(StudentName,Result) ('Carol','Second');Query OK, 1 แถวได้รับผลกระทบ (0.18 วินาที)mysql> แทรกลงในค่า TwoPrimaryKeyTableDemo (StudentName,Result) ('Carol','Fail');แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.05 วินาที)

ตอนนี้เราสามารถตรวจสอบเรกคอร์ดโดยใช้คำสั่ง select พร้อมคำสั่งตามลำดับ แบบสอบถามมีดังนี้

mysql> เลือก *จากลำดับ TwoPrimaryKeyTableDemo ตาม StudentId,Result;

ต่อไปนี้เป็นผลลัพธ์ -

<ก่อนหน้า>+---------+-----------+-------------+| ผลลัพธ์ | รหัสนักศึกษา | ชื่อนักเรียน |+---------+-----------+-------------+| ครั้งแรก | 1 | แครอล || วินาที | 1 | จอห์นสัน || ที่สาม | 1 | สมิธ || ล้มเหลว | 1 | จอห์น || วินาที | 2 | แครอล || ที่สาม | 2 | จอห์นสัน || ล้มเหลว | 2 | Carol |+---------+-----------+-------------+7 แถวในชุด (0.00 วินาที)