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

MySQL:แทรกแถวและรับเนื้อหา?


ในการแทรกแถวและรับเนื้อหา คุณต้องใช้กระบวนงานที่เก็บไว้ ขั้นแรก คุณต้องสร้างตาราง หลังจากนั้น คุณต้องสร้างกระบวนงานที่เก็บไว้ซึ่งจะแทรกแถวและรับเนื้อหาไปยังผู้ใช้ปลายทาง

ในการทำงานข้างต้น ให้เราสร้างตารางก่อน แบบสอบถามเพื่อสร้างตารางมีดังนี้:

mysql> สร้างตาราง InsertRecord_SelectTable -> ( -> Id int ไม่ใช่ NULL AUTO_INCREMENT, -> Name varchar(20), -> PRIMARY KEY(Id) -> );Query OK, 0 แถวได้รับผลกระทบ (1.45 วินาที) 

ตอนนี้สร้างกระบวนงานที่เก็บไว้ที่แทรกบันทึกในตารางด้านบนและรับกลับผลลัพธ์จากตารางทันทีหลังจากเรียกกระบวนงานที่เก็บไว้ แบบสอบถามเพื่อสร้างกระบวนงานที่เก็บไว้มีดังนี้:

mysql> DELIMITER //mysql> สร้างโพรซีเดอร์ Insert_select -> ( -> ใน tempName varchar(40) -> ) -> start -> ประกาศ tempId int ที่ไม่ได้ลงชื่อ -> แทรกลงในค่า InsertRecord_SelectTable(Name) (tempName); -> ตั้งค่า tempId =last_insert_id(); -> เลือก *จาก InsertRecord_SelectTable โดยที่ Id=tempId; -> END //แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.21 วินาที) mysql> DELIMITER;

เรียกกระบวนงานที่เก็บไว้เพื่อดู แทรกแถว และรับเนื้อหา แบบสอบถามเพื่อเรียกกระบวนงานที่เก็บไว้มีดังนี้:

CALL yourStoredProcedureName;

ตอนนี้คุณสามารถเรียกกระบวนงานที่เก็บไว้ของคุณ:

mysql> โทร Insert_select('John');

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

<ก่อนหน้า>+---+------+| รหัส | ชื่อ |+----+------+| 1 | John |+----+------+1 แถวในชุด (0.12 วินาที) ตกลง ตกลง 0 แถวได้รับผลกระทบ 1 คำเตือน (0.13 วินาที)