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

ข้อกำหนดเบื้องต้นสำหรับการเริ่มต้นเขียนและใช้กระบวนงานที่เก็บไว้ของ MySQL คืออะไร


เราต้องมีข้อกำหนดเบื้องต้นดังต่อไปนี้ก่อนเริ่มเขียนและใช้กระบวนงานที่เก็บไว้ของ MySQL –

เวอร์ชัน MySQL

อย่างที่เราทราบดีว่า MySQL 5 ได้แนะนำโพรซีเดอร์ที่เก็บไว้ ดังนั้นก่อนอื่นเราต้องตรวจสอบเวอร์ชันของ MySQL ก่อนเริ่มเขียนและใช้โพรซีเดอร์ที่เก็บไว้ สามารถทำได้ด้วยแบบสอบถามต่อไปนี้ -

mysql> Select VERSION();
+-----------+
| VERSION() |
+-----------+
| 5.7.20    |
+-----------+
1 row in set (0.10 sec)

สิทธิ์สำหรับผู้ใช้ปัจจุบัน

จริงๆ แล้ว CREATE PROCEDURE และ CREATE FUNCTION ต้องใช้สิทธิ์ CREATE ROUTINE ตามค่าเริ่มต้น MySQL จะให้สิทธิ์ ALTER ROUTINE และ EXECUTE แก่ผู้สร้างประจำโดยอัตโนมัติ ลักษณะการทำงานนี้สามารถเปลี่ยนแปลงได้โดยการปิดใช้งานตัวแปรระบบ automatic_sp_privileges สิทธิ์สำหรับผู้ใช้ปัจจุบันสามารถตรวจสอบได้ด้วยแบบสอบถามต่อไปนี้ -

mysql> SHOW PRIVILEGES

การเลือกฐานข้อมูล

ก่อนสร้างโพรซีเดอร์ เราจะต้องเลือกฐานข้อมูลจากฐานข้อมูลที่มีอยู่ สามารถทำได้โดยใช้แบบสอบถามต่อไปนี้ -

mysql> USE query;
Database changed

จากแบบสอบถามข้างต้น เป็นที่ชัดเจนว่าเรากำลังใช้ฐานข้อมูลชื่อ 'แบบสอบถาม'

การเลือก DELIMITER

ตัวคั่นคืออักขระหรือสตริงของอักขระที่ใช้เพื่อทำให้คำสั่ง SQL สมบูรณ์ โดยค่าเริ่มต้น เราใช้เครื่องหมายอัฒภาค (;) เป็นตัวคั่น แต่สิ่งนี้ทำให้เกิดปัญหาในโพรซีเดอร์ที่เก็บไว้ เนื่องจากโพรซีเดอร์สามารถมีหลายคำสั่ง และทุกคนต้องลงท้ายด้วยเซมิโคลอน ดังนั้นสำหรับตัวคั่นของคุณ ให้เลือกสตริงที่ไม่ค่อยเกิดขึ้นภายในคำสั่งหรือภายในโพรซีเดอร์ เราสามารถเลือกแบ็กสแลชคู่ // หรือเครื่องหมายดอลลาร์คู่ $$ หรือตัวคั่นอื่นใดที่เราเลือก สามารถทำได้โดยใช้แบบสอบถามต่อไปนี้ -

mysql> DELIMITER // ;

ตอนนี้ ตัวคั่นเริ่มต้นถูกเปลี่ยนเป็น // และสามารถตรวจสอบได้จากข้อความค้นหาต่อไปนี้ -

mysql> Select * from student_info //
+------+---------+------------+------------+
| id   | Name    | Address    | Subject    |
+------+---------+------------+------------+
| 100  | Aarav   | Delhi      | Computers  |
| 101  | YashPal | Amritsar   | History    |
| 105  | Gaurav  | Jaipur     | Literature |
| 110  | Rahul   | Chandigarh | History    |
+------+---------+------------+------------+
4 rows in set (0.00 sec)