บทความ

กำลังแสดงโพสต์จาก ธันวาคม, 2012

PL/SQL_001_Introduction to PL/SQL ตอนที่ 1

PL ย่อมาจาก Procedural Language เป็นภาษาที่ Oracle พัฒนาขึ้น เพื่อให้ผู้ใช้สามารถพัฒนาโปรแกรม ในลักษณะ procedure ได้ โดยในขณะเดียวกันยังคงสามารถใช้คำสั่ง SQL ได้เช่นเดิม ลักษณะคำสั่งภาษา SQL จะเป็นการสั่งทีละคำสั่งเดียว แล้วให้ผลลัพธ์ทันที เช่น SELECT * FROM emp; หรือ UPDATE emp SET salary = salary * 1.1; ส่วนลักษณะคำสั่งภาษา PL/SQL จะเป็นการทำงานทีละ procedure เช่น DECLARE V_deptno NUMBER; BEGIN SELECT deptno INTO v_deptno FROM dept WHERE deptname = ‘Accounting’; UPDATE emp SET deptno = V_deptno WHERE empno = 10; END; ข้อดีของภาษา PL/SQL 1. Control flow การทำงานในโปรแกรมได้ด้วยคำสั่งต่าง ๆ เช่น IF statement, Loop ต่าง ๆ 2. การเข้าถึงข้อมูล สามารถทำได้ง่ายด้วยคำสั่ง SQL ธรรมดา 3. Portability คือ เขียนโปรแกรมครั้งเดียว สามารถ port ข้าม platform ได้ถ้าต้องการย้ายเครื่อง ไม่จำเป็นต้องเขียนใหม่ สามารถเอา source code เก่ามาใช้ได้เลย 4. Tools ต่างๆ ของ oracle ใช้ภาษา PL/SQL ในการเขียนโปรแกรม ทำให้ผู้พัฒนาไม่ต้องเรียนรู้ หลายภาษา เพียงแค่เรียน PL/SQL อย่างเดียว

PL/SQL_002_Introduction to PL/SQL ตอนที่ 2

รูปภาพ
คำสั่งในภาษา PL/SQL 1. ใช้คำสั่งภาษา SQL ได้ดังนี้ Data Retrieval SELECT Data Manipulation Language INSERT UPDATE DELETE Transaction Control COMMIT ROLLBACK SAVEPOINT 2. การ Assign ค่าตัวแปร ชื่อตัวแปร := expression ; 3. การทำงานตามเงื่อนไขด้วย IF statement IF condition THEN statements ; [ELSIF condition THEN statements; ] [ELSE statements;] END IF; โดย : condition คือตัวแปร Boolean หรือ expression ที่ได้ผลลัพธ์เป็นค่า Boolean หมายเหตุ * ELSIF เขียนติดกัน และ 1 IF จะมีกี่ ELSIF ก็ได้ * END IF เขียนเป็น 2 คำ * IF statement มีได้อย่างมาก 1 ELSE เท่านั้น ตัวอย่าง IF V_date_shipped - V_date_ordered < 5 THEN V_ship_flag := ‘Acceptable’; ELSE V_ship_flag := ‘Unacceptable’; END IF; IF V_last_name = ‘Dumas’ THEN V_job := ‘Sales Representative’; V_region_id := 35; END IF; 4. การทำงานแบบ loop เป็นการทำงานคำสั่งชุดเดิม หลาย ๆ รอบ loop ใน PL/SQL มี 3 แบบ 4.1 Basic loop LOOP statement 1; statement 2; ... EXIT [WHEN condition]; END LOOP;