นโยบายการจัดการความรู้ มหาวิทยาลัยสงขลานครินทร์ 1.ให้ใช้เครื่องมือการจัดการความรู้ผลักดัน คุณภาพคน และกระบวนทำงาน 2.ส่งเสริมการแลกเปลี่ยนประสบการณ์การทำงาน จากหน้างาน 3.ส่งเสริมให้มีเวทีเรียนรู้ร่วมกัน

เครือข่าย
สมาชิก · ติดตาม: 0 · ผู้ติดตาม: 0

อ่าน: 109
ความเห็น: 0

การ Share ชุดคำสั่งบน ORACLE Stored Procedure

ORACLE Stored Procedure
ชุดคำสั่ง (Stored Procedure) บนระบบจัดการฐานข้อมูล ORACLE ที่ใช้งานกันบ่อยๆ มีด้วยกัน 3 ประเภทคือ Procedure, Function และ Package โดยมีรูปแบบการเขียนเป็นโครงสร้างโปรแกรมในรูปแบบ PL/SQL โดยมีรายละเอียดในแต่ละประเภทดังนี้
1. Procedure เป็นรูปแบบชุดคำสั่งแบบ PL/SQL ที่เมื่อทำงานเสร็จจะไม่ส่งค่ากลับมายังผู้เรียก
2. Function เป็นรูปแบบชุดคำสั่งแบบ PL/SQL ที่เมื่อทำงานเสร็จจะไม่ส่งค่ากลับมายังผู้เรียก
3. Package เป็นรูปแบบชุดคำสั่งที่รวม Procedure และ Function เข้าเป็นชุดคำสั่งย่อยๆใน Package ได้มีองค์ประกอบภายใน 2 รูปแบบประกอบกันคือ Package Spec และ Package Body
    - Package Spec เป็นการระบุข้อมูลชื่อและพารามีเตอร์สำหรับ Procedure และ Function ภายใน
  - Package Body เป็นชุดคำสั่งรูปแบบ PL/SQL สำหรับแต่ละ Procedure และ Function ที่ระบุใน Package Spec
เป้าหมายของบันทึกนี้: เพื่อสร้าง Stored Procedure ชุดเดียวให้สามารถเรียกใช้งานโดยใช้จากตารางข้อมูลของผู้เรียก 
ที่มาของข้อมูล: ข้อมูลที่ใช้ในบันทึกนี้จะเป็นเรื่องเลขเรียกหนังสือ (Call Number) ซึ่งใช้กำหนดหมวดหมู่หนังสือของระบบห้องสมุด
https://www.loc.gov/catdir/cpso/lcco/
ขั้นตอน:
1. สร้างตารางข้อมูลบน User#1 และเพิ่มข้อมูลดังนี้

2. สร้าง Stored Procedure (Function) บน User#1 ดังรูป

3. ทดสอบเรียก Function จาก User#1 (Schema name: BI01)

4. สร้างตารางข้อมูล   TL_LC_CLASS บน User#2 (BI02) เพิ่มข้อมูล 5 รายการ ดังรูป

5. หากต้องการให้ User#2 เรียกใช้งาน Function จาก User#1 โดย Execute ข้อมูลของตนเอง มีขั้นตอนดังนี้
- เพิ่มข้อความ Authid Current_User บน Function ของ User#1
- Grant Execute Function ให้ User#2 สามารถเรียกใช้งานได้ ดังรูป

6. ทดสอบการเรียกใช้งาน Function ดังรูป

สรุป การสร้าง Procedure และ Package เพื่อให้สามารถเรียกใช้งานจาก Schema อื่นโดยยัง Execute จากข้อมูลของผู้เรียก สามารถดำเนินการได้คล้ายการสร้าง Function ตามตัวอย่างข้างต้น


หมวดหมู่บันทึก: เรื่องทั่วไป
คำสำคัญ (keywords): ORACLE Stored Procedure
สัญญาอนุญาต: ซีซี: แสดงที่มา-ไม่ใช้เพื่อการค้า-อนุญาตแบบเดียวกัน Cc-by-nc-sa
สร้าง: 27 พฤศจิกายน 2563 16:02 แก้ไข: 27 พฤศจิกายน 2563 16:02 [ แจ้งไม่เหมาะสม ]
ดอกไม้
สมาชิกที่ให้กำลังใจ
 
Facebook
Twitter
Google

บันทึกอื่นๆ

ความเห็น

ไม่มีความเห็น

ร่วมแสดงความเห็นในหน้านี้

ชื่อ:
อีเมล:
IP แอดเดรส: 3.239.233.139
ข้อความ:  
เรียกเครื่องมือจัดการข้อความ
   
ยกเลิก หรือ