สอบถามหลักสูตรเลือกช่องทางที่สะดวก ทีมงานตอบเองทุกช่อง
LINE @itgeniusตอบเร็วที่สุด · จ–ศ 9:00–17:00 น.
โทรศัพท์
02-570-8449สำนักงาน088-807-9770มือถือ
อีเมลและโซเชียล
contact@itgenius.co.thสำหรับใบเสนอราคาและเอกสารFacebookitgeniusonlineYouTubeitgeniusengขอคำปรึกษาจัดอบรมให้ทีม
ฐานข้อมูล · DBC-02-14

Oracle Database: Introduction to PL/SQL

หลักสูตร Oracle Database: Introduction to PL/SQL เป็นการอบรมพื้นฐานภาษา PL/SQL บน Oracle AI Database 26ai ตั้งแต่ตัวแปร เงื่อนไข และ Loop ไปจนถึง Cursor การจัดการ Exception และการสร้าง Stored Procedure เหมาะกับ Developer และเจ้าหน้าที่ดูแลฐานข้อมูลที่ใช้ SQL อยู่แล้ว

อัปเดตล่าสุด
ราคาเริ่มต้น 6,750 บาท / ท่าน 7,500 −10% ยังไม่รวม VAT 7% · มีราคาหมู่คณะ
PDFดาวน์โหลด Course Outline
  • ระยะเวลา12 ชั่วโมง · 2 วัน
  • รูปแบบออนไซต์ / ออนไลน์สด
  • รอบถัดไปเปิดตามคำขอ
  • ใบรับรองมี Certificate

ภาพรวมหลักสูตร

งานจำนวนมากในองค์กรที่ใช้ Oracle Database ต้องประมวลผลข้อมูลหลายขั้นตอน เช่น คำนวณเงินเดือน ปิดยอดประจำวัน หรือย้ายข้อมูลระหว่างตาราง ถ้าเขียนเป็นคำสั่ง SQL ทีละคำสั่งจากฝั่งแอปพลิเคชัน งานจะช้า ดูแลยาก และเสี่ยงข้อมูลค้างครึ่งทางเมื่อเกิดข้อผิดพลาด PL/SQL คือภาษาเชิงกระบวนการของ Oracle ที่ทำให้เขียนตรรกะเหล่านี้ให้ทำงานในฐานข้อมูลได้ครบในที่เดียว พร้อมจัดการ Transaction และข้อผิดพลาดอย่างเป็นระบบ

หลักสูตรนี้ปูพื้นฐาน PL/SQL บน Oracle AI Database 26ai ซึ่งเป็นรุ่นปัจจุบันของ Oracle เริ่มจากเตรียมฐานข้อมูลรุ่น Free กับ SQL Developer for VS Code และ SQLcl จากนั้นเรียนโครงสร้าง Anonymous Block ตัวแปร ชนิดข้อมูลรวมถึง BOOLEAN ที่ใช้ได้ทั้งใน SQL และ PL/SQL การดึงข้อมูล การจัดการ Transaction เงื่อนไข และ Loop ต่อด้วย Record, Collection, Cursor, BULK COLLECT กับ FORALL การจัดการ Exception และการสร้าง Stored Procedure กับ Function ทุกหัวข้อมี Lab จากโจทย์งานจริง และปิดท้ายด้วย Workshop เขียนงานประมวลผลข้อมูลตั้งแต่ต้นจนจบ (อบรม 2 วัน วันละ 6 ชั่วโมง รวม 12 ชั่วโมง ระดับ Beginner)

สิ่งที่คุณจะได้รับ

  • เตรียมสภาพแวดล้อม Oracle AI Database 26ai Free พร้อมเครื่องมือเขียนโค้ดได้ด้วยตนเอง
  • เขียน Anonymous Block ใช้ตัวแปร ชนิดข้อมูล และ %TYPE กับ %ROWTYPE ได้ถูกต้อง
  • ดึงและแก้ไขข้อมูลใน PL/SQL พร้อมควบคุม Transaction ได้
  • ใช้เงื่อนไข Loop, Record และ Collection แก้โจทย์ประมวลผลข้อมูลได้
  • ใช้ Cursor, BULK COLLECT และ FORALL กับข้อมูลหลายแถวได้อย่างมีประสิทธิภาพ
  • จัดการ Exception และบันทึกข้อผิดพลาดเพื่อตรวจสอบย้อนหลังได้
  • สร้าง เรียกใช้ แก้ไข และลบ Stored Procedure กับ Function ได้

หลักสูตรนี้เหมาะสำหรับ

  • Developer ที่ต้องเขียนตรรกะทางธุรกิจหรืองานประมวลผลข้อมูลบน Oracle Database
  • เจ้าหน้าที่และผู้ดูแลฐานข้อมูลที่ต้องอ่านและแก้ไขโค้ด PL/SQL ที่มีอยู่ในระบบ
  • Data Analyst และ Report Developer ที่ใช้ SQL อยู่แล้วและอยากทำงานอัตโนมัติมากขึ้น
  • ผู้ที่ต้องการเริ่มต้นสายงาน Oracle Developer หรือ DBA

พื้นฐานของผู้เข้าอบรม

  • เขียน SQL พื้นฐานได้ เช่น SELECT, WHERE, JOIN, INSERT และ UPDATE
  • เข้าใจแนวคิดตาราง Primary Key และ Foreign Key เบื้องต้น
  • ไม่จำเป็นต้องเคยเขียนโปรแกรมมาก่อน แต่ถ้าเคยจะเรียนได้เร็วขึ้น
  • โน้ตบุ๊กที่ติดตั้ง Docker Desktop หรือ VirtualBox และ VS Code ได้ พร้อมสิทธิ์ติดตั้งโปรแกรม

หัวข้อการฝึกอบรม

รายละเอียดหลักสูตร

หลักสูตรนี้เป็นฉบับปรับปรุงใหม่ปี 2026 ของหลักสูตร Oracle Database: Introduction to PL/SQL เนื้อหาอัปเดตให้ตรงกับ Oracle AI Database 26ai ซึ่งเป็นรุ่นปัจจุบันที่สืบต่อจาก 23ai อบรม 2 วัน วันละ 6 ชั่วโมง รวม 12 ชั่วโมง (09:00-16:00 น.) รูปแบบบรรยายพร้อม Lab ทุกหัวข้อ ระดับ Beginner ผู้เรียนติดตั้ง Oracle AI Database 26ai Free บนเครื่องของตนเอง และเขียนโค้ดด้วย SQL Developer for VS Code กับ SQLcl เนื้อหาครอบคลุมพื้นฐานภาษา Transaction, Collection, Cursor, BULK COLLECT, Exception และ Stored Procedure โค้ดส่วนใหญ่ใช้ได้กับ Oracle Database 19c ด้วย ผู้เรียนจะได้ Lab Guide สคริปต์ SQL และ PL/SQL ครบทุก Lab และโค้ด Workshop กลับไปใช้งานต่อ

Day 1 พื้นฐานภาษา PL/SQL และการทำงานกับข้อมูล

Section 1: Lab: เตรียมสภาพแวดล้อม Oracle AI Database 26ai

  • Oracle AI Database 26ai Free กับสถาปัตยกรรม CDB และ PDB แบบย่อ
  • รันฐานข้อมูลบน Container หรือ VM และสร้างผู้ใช้ด้วย DB_DEVELOPER_ROLE
  • เชื่อมต่อด้วย SQL Developer for VS Code และ SQLcl
  • Lab: ติดตั้ง Schema ตัวอย่างและรันคำสั่งแรก

Section 2: โครงสร้าง Anonymous Block

  • ส่วน DECLARE, BEGIN, EXCEPTION และ END
  • แสดงผลด้วย DBMS_OUTPUT.PUT_LINE และ SET SERVEROUTPUT ON
  • Nested Block และขอบเขตของตัวแปร
  • Lab: เขียน Block แรกที่คำนวณและแสดงผล

Section 3: ตัวแปรและชนิดข้อมูล

  • ชนิดข้อมูล Scalar: NUMBER, VARCHAR2, DATE, TIMESTAMP และ PLS_INTEGER
  • BOOLEAN ที่ใช้ได้ทั้งใน PL/SQL และใน SQL ตั้งแต่รุ่น 23ai
  • ประกาศตัวแปรด้วย %TYPE และ %ROWTYPE พร้อม Constant และค่าเริ่มต้น
  • Lab: เก็บและคำนวณข้อมูลพนักงานด้วยตัวแปร

Section 4: Lab: ดึงข้อมูลและจัดการ Transaction

  • SELECT ... INTO และข้อผิดพลาดเมื่อไม่พบหรือพบหลายแถว
  • INSERT, UPDATE, DELETE, RETURNING INTO และ SQL%ROWCOUNT
  • COMMIT, ROLLBACK และ SAVEPOINT ในงานหลายขั้นตอน
  • Lab: ปรับเงินเดือนตามเงื่อนไขพร้อมย้อนกลับเมื่อผิดพลาด

Section 5: Lab: เงื่อนไขและ Loop

  • IF ... ELSIF ... ELSE และ CASE ทั้งแบบ Statement และ Expression
  • Basic Loop, WHILE Loop, FOR Loop, EXIT WHEN และ CONTINUE WHEN
  • Iteration Control แบบใหม่ เช่น BY และ WHEN ใน FOR Loop
  • Lab: คำนวณค่าคอมมิชชันแบบขั้นบันได

Section 6: ฟังก์ชันและการแปลงชนิดข้อมูล

  • ใช้ฟังก์ชัน SQL ใน PL/SQL: ข้อความ ตัวเลข และวันที่
  • TO_CHAR, TO_DATE และ TO_NUMBER พร้อม Format Model
  • DEFAULT ... ON CONVERSION ERROR และ VALIDATE_CONVERSION
  • Lab: ตรวจและแปลงข้อมูลนำเข้าที่รูปแบบไม่สม่ำเสมอ
Day 2 Cursor, Exception และ Stored Procedure

Section 7: Record และ Collection

  • PL/SQL Record และการ INSERT หรือ UPDATE ด้วย Record
  • Associative Array (INDEX BY Table), Nested Table และ VARRAY
  • สร้างค่าเริ่มต้นด้วย Qualified Expression
  • Lab: เก็บข้อมูลชั่วคราวใน Collection แล้วสรุปผล

Section 8: Lab: Explicit Cursor

  • ประกาศ OPEN, FETCH และ CLOSE Cursor
  • Attribute: %FOUND, %NOTFOUND, %ROWCOUNT และ %ISOPEN
  • Cursor FOR Loop, Cursor ที่รับ Parameter และ FOR UPDATE
  • Lab: ออกรายงานรายฝ่ายด้วย Cursor

Section 9: Lab: ประมวลผลข้อมูลจำนวนมาก

  • Context Switch ระหว่าง SQL Engine และ PL/SQL Engine
  • BULK COLLECT พร้อม LIMIT เพื่อคุมหน่วยความจำ
  • FORALL และ SAVE EXCEPTIONS
  • Lab: เทียบเวลาระหว่าง Loop ทีละแถวกับแบบ Bulk

Section 10: จัดการ Exception อย่างเป็นระบบ

  • Predefined และ User-defined Exception พร้อม PRAGMA EXCEPTION_INIT
  • RAISE_APPLICATION_ERROR, SQLCODE และ SQLERRM
  • บันทึก Error Stack และ Backtrace ลงตาราง Log
  • Lab: เพิ่มการจัดการข้อผิดพลาดให้โค้ดจากวันแรก

Section 11: Lab: Stored Procedure และ Function

  • สร้าง เรียกใช้ แก้ไข และลบ Procedure และแนะนำ Package
  • Parameter แบบ IN, OUT และ IN OUT
  • สร้าง Function เรียกใช้จาก SQL และดู Compile Error ด้วย SHOW ERRORS
  • Lab: สร้าง Procedure และ Function สำหรับคำนวณและบันทึกข้อมูล

Section 12: Workshop: สภาพแวดล้อมการทำงานและโปรเจกต์ปิดท้าย

  • PL/SQL Engine, Dependency, สถานะ INVALID และ Definer กับ Invoker Rights
  • Workshop: เขียน Procedure ปิดยอดขายประจำวันพร้อม Log และ Transaction
  • ใช้ AI Assistant ช่วยอธิบายโค้ด และตรวจผลก่อนใช้จริง
  • สรุป Checklist ก่อนนำโค้ดขึ้นระบบจริง

รอบอบรมและรูปแบบการอบรม

สำหรับบุคคล — รอบอบรมทั่วไป

ขณะนี้ยังไม่มีรอบอบรมเปิดรับสมัคร ลงชื่อจองไว้ได้เลย ทีมงานจะติดต่อกลับเป็นกลุ่มแรกเมื่อเปิดรอบถัดไป หรือสอบถามทางไลน์ หรือโทร 02-570-8449 หรือ 088-807-9770

สำหรับองค์กร — In-house / Private Training

  • ปรับเนื้อหาให้ตรงกับเครื่องมือและงานจริงของทีม
  • เลือกวันเอง อบรมที่บริษัทหรือออนไลน์สด
  • ออกใบเสนอราคาในนามนิติบุคคลให้ฝ่ายจัดซื้อ
ขอใบเสนอราคาอบรมองค์กร

วิทยากรผู้สอน

คำถามที่พบบ่อย

PL/SQL ต่างจาก SQL อย่างไร

SQL เป็นภาษาสั่งงานฐานข้อมูลทีละคำสั่ง เช่น SELECT INSERT UPDATE ส่วน PL/SQL เป็นภาษาเชิงกระบวนการของ Oracle ที่ครอบ SQL ไว้ เพิ่มตัวแปร เงื่อนไข IF ลูป การจัดการ Exception และการสร้าง Procedure หรือ Function ทำให้เขียนตรรกะทางธุรกิจหลายขั้นตอนให้ทำงานในฐานข้อมูลได้ในครั้งเดียว ลดการรับส่งข้อมูลระหว่างแอปพลิเคชันกับเซิร์ฟเวอร์

Anonymous Block ใน PL/SQL มีโครงสร้างอย่างไร

Anonymous Block แบ่งเป็นสี่ส่วน คือ DECLARE สำหรับประกาศตัวแปรและ Cursor (ไม่บังคับ) BEGIN สำหรับคำสั่งที่ทำงาน (บังคับ) EXCEPTION สำหรับจัดการข้อผิดพลาด (ไม่บังคับ) และปิดด้วย END; ใน SQLcl หรือ SQL Developer for VS Code ให้พิมพ์ / เพื่อสั่งรัน และเปิด SET SERVEROUTPUT ON เพื่อดูผลจาก DBMS_OUTPUT.PUT_LINE

ใช้ Cursor ใน PL/SQL มีขั้นตอนอย่างไร และเมื่อไรควรใช้ BULK COLLECT

เริ่มจากประกาศ Cursor พร้อมคำสั่ง SELECT ในส่วน DECLARE สั่ง OPEN แล้วใช้ FETCH ... INTO ในลูปเพื่อดึงข้อมูลทีละแถว ออกจากลูปเมื่อ %NOTFOUND เป็นจริง และปิดด้วย CLOSE หรือใช้ Cursor FOR Loop ซึ่งเปิด ดึง และปิดให้อัตโนมัติ ถ้าข้อมูลมีจำนวนมาก ให้ใช้ BULK COLLECT พร้อม LIMIT ดึงทีละชุด และใช้ FORALL บันทึกผล ซึ่งลดการสลับระหว่าง SQL Engine กับ PL/SQL Engine และเร็วกว่าการทำทีละแถวอย่างชัดเจน

หลักสูตร Oracle Database: Introduction to PL/SQL เหมาะกับใคร ต้องมีพื้นฐานอะไรมาก่อน

เหมาะกับ Developer เจ้าหน้าที่และผู้ดูแลฐานข้อมูล Oracle และผู้ที่ใช้ SQL อยู่แล้วและต้องการเขียนตรรกะไว้ในฐานข้อมูล ควรเขียน SQL พื้นฐานได้ เช่น SELECT, JOIN, INSERT และ UPDATE ไม่จำเป็นต้องเคยเขียนโปรแกรมมาก่อน และควรนำโน้ตบุ๊กที่ติดตั้ง Docker Desktop หรือ VM และ VS Code ได้มาใช้ใน Lab

เรียนจบหลักสูตร Oracle Database: Introduction to PL/SQL แล้วทำอะไรได้บ้าง

เตรียมสภาพแวดล้อม Oracle AI Database 26ai Free ได้เอง เขียน Anonymous Block ใช้ตัวแปรและชนิดข้อมูล จัดการ Transaction เขียนเงื่อนไขและลูป ใช้ Record, Collection และ Cursor ประมวลผลข้อมูลจำนวนมากด้วย BULK COLLECT และ FORALL จัดการ Exception พร้อมบันทึก Log และสร้าง เรียกใช้ และลบ Stored Procedure กับ Function ผู้ผ่านการอบรมได้รับใบประกาศนียบัตร (Certificate of Completion) ที่มีเลขที่ของตัวเองและตรวจสอบออนไลน์ได้

จัดอบรมหลักสูตร Oracle Database: Introduction to PL/SQL ให้ทีมในองค์กรได้ไหม

ได้ หลักสูตรนี้จัดเป็นการอบรมแบบ In-house ให้ทีมในองค์กรได้ และปรับตัวอย่างให้ตรงกับงานของทีม เช่น ฝึกเขียน Procedure จากงานประมวลผลข้อมูลที่ทีมทำอยู่ ขอใบเสนอราคาได้จากหน้านี้ หรือติดต่อทาง LINE @itgenius โทร 02-570-8449

บทความที่เกี่ยวข้อง