ถามเรื่อง การใช้ Stored Procedure ใน MySQL ครับ
ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา ถามเรื่อง การใช้ Stored Procedure ใน MySQL ครับ
ผมลองสร้าง Stored Procedure ง่ายๆแล้วลอง Query ด้วย โปรแกม MySQL Broswer สามารถ ใช้ได้ปกติครับ
Call sp_test();
แต่พอนำมา query ผ่าน php
$sql = "CALL sp_test()";
$query = mysql_query($sql) or die(mysql_error());
มัน error ว่า
PROCEDURE db_test.sp_test can't return a result set in the given context
จะแก้ไขยังไงได้บ้างครับ

คำแนะนำ และการใช้งาน
สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก
- ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
ไม่แน่ใจครับ ลองดู
$sql = CALL sp_test();

ไม่ได้อะครับ ไม่ขึ้นอะไรเลย

อะไรคือ
Stored Procedure
แต่น่าสนใจ ลองอ่านเนื้อหาจาก http://www.macronimous.com/resources/using_stored_procedure_with_mySQL_and_PHP.asp
กำลังลองศึกษาดูว่ามันคืออะไร.....

ขอบคุณครับ ตอนนี้พอจะเข้าใจปัญหาแล้วครับ
http://www.joeyrivera.com/2009/using-mysql-stored-procedures-with-php-mysqlmysqlipdo/
ไปได้ตัวอย่างตามลิงค์ข้างบนครับ เท่าที่เข้าใจ คิดว่า เพราะ function mysql เฉยๆ นั้น ไม่สามารถ return ค่า เป็น recordset ได้
ต้องไปใช้ mysqli แทน
ส่วนเรื่อง stored procedure นั้น ผมเองก็จะเริ่มศึกษาเหมือนกันครับ
เท่าที่ผมเข้าใจประโยชน์คร่าวๆคือ มันจะมีความปลอดภัย และเร็วกว่า query แบบปกติรึเปล่า

เท่านี้ก็สามารถเรียกใช้งาน stored procedure ได้แล้ว

โอ้วววว ผมไม่ได้อ่านในส่วนนั้น เลยมองข้ามไป ไปลองเทส mysqli แทน
ลองทำตามดังกล่าวแล้วครับ สามารถ return recordset ได้ด้วย
