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

จะเรียกกระบวนงานที่เก็บไว้โดยใช้คำสั่ง select ใน MySQL ได้อย่างไร


ใน MySQL ไม่สามารถใช้การเลือกจากโพรซีเดอร์ในส่วนคำสั่ง FROM คุณสามารถใช้คำสั่ง CALL และหลังจากนั้นก็สามารถดำเนินการคำสั่ง SELECT ได้

ให้เราสร้างตารางก่อน:

mysql> สร้างตาราง DemoTable2 -> ( -> CustomerId int ไม่ใช่ NULL AUTO_INCREMENT PRIMARY KEY, -> CustomerName varchar(100), -> ShippingDateTime datetime -> ); แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.66 วินาที)

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

mysql> DELIMITER //mysql> CREATE PROCEDURE insert_information (ชื่อ varchar (100) วันที่เวลาจัดส่ง) -> BEGIN -> -> INSERT INTO DemoTable2 (CustomerName,ShippingDateTime) VALUES (ชื่อ, เวลาจัดส่ง); -> END -> //แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.16 วินาที) mysql> DELIMITER;

ตอนนี้คุณสามารถเรียกกระบวนงานที่เก็บไว้โดยใช้คำสั่งโทร:

mysql> call insert_information('Chris',NOW());แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว คำเตือน 1 รายการ (0.15 วินาที)

นี่คือแบบสอบถามเพื่อแสดงบันทึกจากตารางโดยใช้คำสั่ง select หลังจากเรียกกระบวนงานที่เก็บไว้

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

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

<ก่อนหน้า>+-----------------------------------+----------------- ----+| รหัสลูกค้า | ชื่อลูกค้า | ShippingDateTime |+--------------------+--------------------------+------------------- ---+| 1 | คริส | 2019-04-08 15:03:07 |+-----------+--------------+---------- ------------+1 แถวในชุด (0.00 วินาที)