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

วิธีตั้งค่ารหัสการเพิ่มอัตโนมัติที่แตกต่างกันสำหรับสองตารางด้วยตัวแปรที่ผู้ใช้กำหนด


สำหรับสิ่งนี้ คุณสามารถใช้ LAST_INSERT_ID() ให้เราสร้างตารางก่อน ที่นี่ เราได้ตั้งค่า auto_increment id เป็นคอลัมน์ StudentId -

mysql> สร้างตาราง DemoTable1 (StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY) ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.58 วินาที)

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

mysql> แทรกลงในค่า DemoTable1 (null) เคียวรีตกลง ได้รับผลกระทบ 1 แถว (0.18 วินาที)

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

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

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

<ก่อนหน้า>+-----------+| รหัสนักศึกษา |+-----------+| 1 |+-----------+1 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อรับ id แทรกล่าสุด เราได้ตั้งค่าไว้ในตัวแปรที่ผู้ใช้กำหนด -

mysql> set @studentId=last_insert_id(); สอบถามตกลง 0 แถวได้รับผลกระทบ (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อสร้างตารางที่สอง -

mysql> สร้างตาราง DemoTable2 (Id int) ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.61 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อตั้งค่ารหัสการเพิ่มอัตโนมัติที่แตกต่างกันสำหรับสองตาราง -

mysql> แทรกลงในค่า DemoTable2(@studentId+1);แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.13 วินาที)

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

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

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

<ก่อนหน้า>+------+| รหัส |+------+| 2 |+------+1 แถวในชุด (0.00 วินาที)