PL / SQL - ไวยากรณ์พื้นฐาน
ในบทนี้เราจะพูดถึงไวยากรณ์พื้นฐานของ PL / SQL ซึ่งเป็นไฟล์ block-structuredภาษา; ซึ่งหมายความว่าโปรแกรม PL / SQL ถูกแบ่งและเขียนในบล็อกตรรกะของโค้ด แต่ละบล็อกประกอบด้วยสามส่วนย่อย -
ส. เลขที่ | ส่วนและคำอธิบาย |
---|---|
1 | Declarations ส่วนนี้เริ่มต้นด้วยคำหลัก DECLARE. เป็นส่วนทางเลือกและกำหนดตัวแปรเคอร์เซอร์โปรแกรมย่อยและองค์ประกอบอื่น ๆ ทั้งหมดที่จะใช้ในโปรแกรม |
2 | Executable Commands ส่วนนี้อยู่ระหว่างคีย์เวิร์ด BEGIN และ ENDและเป็นส่วนบังคับ ประกอบด้วยคำสั่ง PL / SQL ที่เรียกใช้งานได้ของโปรแกรม ควรมีโค้ดที่เรียกใช้งานได้อย่างน้อยหนึ่งบรรทัดซึ่งอาจเป็นเพียงไฟล์NULL command เพื่อระบุว่าไม่ควรดำเนินการใด ๆ |
3 | Exception Handling ส่วนนี้เริ่มต้นด้วยคำหลัก EXCEPTION. ส่วนที่ไม่บังคับนี้ประกอบด้วยexception(s) ที่จัดการข้อผิดพลาดในโปรแกรม |
ทุกคำสั่ง PL / SQL ลงท้ายด้วยอัฒภาค (;) บล็อก PL / SQL สามารถซ้อนกันภายในบล็อก PL / SQL อื่นโดยใช้ไฟล์BEGIN และ END. ต่อไปนี้เป็นโครงสร้างพื้นฐานของบล็อก PL / SQL -
DECLARE
<declarations section>
BEGIN
<executable command(s)>
EXCEPTION
<exception handling>
END;
ตัวอย่าง 'Hello World'
DECLARE
message varchar2(20):= 'Hello, World!';
BEGIN
dbms_output.put_line(message);
END;
/
end;บรรทัดส่งสัญญาณการสิ้นสุดของบล็อก PL / SQL ในการรันโค้ดจากบรรทัดคำสั่ง SQL คุณอาจต้องพิมพ์ / ที่จุดเริ่มต้นของบรรทัดว่างบรรทัดแรกหลังบรรทัดสุดท้ายของโค้ด เมื่อรหัสด้านบนถูกเรียกใช้ที่พรอมต์ SQL จะให้ผลลัพธ์ดังต่อไปนี้ -
Hello World
PL/SQL procedure successfully completed.
ตัวระบุ PL / SQL
ตัวระบุ PL / SQL คือค่าคงที่ตัวแปรข้อยกเว้นโพรซีเดอร์เคอร์เซอร์และคำสงวน ตัวระบุประกอบด้วยตัวอักษรตามด้วยตัวอักษรตัวเลขเครื่องหมายดอลลาร์ขีดล่างและเครื่องหมายตัวเลขและไม่ควรเกิน 30 อักขระ
โดยค่าเริ่มต้น, identifiers are not case-sensitive. ดังนั้นคุณสามารถใช้integer หรือ INTEGERเพื่อแทนค่าตัวเลข คุณไม่สามารถใช้คำหลักที่สงวนไว้เป็นตัวระบุได้
ตัวคั่น PL / SQL
ตัวคั่นคือสัญลักษณ์ที่มีความหมายพิเศษ ต่อไปนี้เป็นรายการตัวคั่นใน PL / SQL -
ตัวคั่น | คำอธิบาย |
---|---|
+, -, *, / | การบวกการลบ / การลบการคูณการหาร |
% | ตัวบ่งชี้คุณสมบัติ |
' | ตัวคั่นสตริงอักขระ |
. | ตัวเลือกส่วนประกอบ |
(,) | นิพจน์หรือตัวคั่นรายการ |
: | ตัวบ่งชี้ตัวแปรโฮสต์ |
, | ตัวคั่นรายการ |
" | ตัวคั่นตัวระบุที่ยกมา |
= | ตัวดำเนินการเชิงสัมพันธ์ |
@ | ตัวบ่งชี้การเข้าถึงระยะไกล |
; | ตัวยุติคำชี้แจง |
:= | ตัวดำเนินการมอบหมาย |
=> | ผู้ดำเนินการสมาคม |
|| | ตัวดำเนินการเชื่อมต่อ |
** | ตัวดำเนินการยกกำลัง |
<<, >> | ตัวคั่นฉลาก (เริ่มต้นและสิ้นสุด) |
/*, */ | ตัวคั่นความคิดเห็นหลายบรรทัด (เริ่มต้นและสิ้นสุด) |
-- | ตัวบ่งชี้ความคิดเห็นบรรทัดเดียว |
.. | ตัวดำเนินการช่วง |
<, >, <=, >= | ตัวดำเนินการเชิงสัมพันธ์ |
<>, '=, ~=, ^= | เวอร์ชันต่างๆของ NOT EQUAL |
ความคิดเห็น PL / SQL
ความคิดเห็นของโปรแกรมเป็นข้อความอธิบายที่สามารถรวมไว้ในโค้ด PL / SQL ที่คุณเขียนและช่วยให้ทุกคนอ่านซอร์สโค้ดได้ ภาษาโปรแกรมทั้งหมดอนุญาตให้แสดงความคิดเห็นบางรูปแบบ
PL / SQL รองรับการแสดงความคิดเห็นแบบบรรทัดเดียวและแบบหลายบรรทัด อักขระทั้งหมดที่มีอยู่ในข้อคิดเห็นใด ๆ จะถูกละเว้นโดยคอมไพลเลอร์ PL / SQL ความคิดเห็นบรรทัดเดียว PL / SQL เริ่มต้นด้วยตัวคั่น - (ยัติภังค์คู่) และความคิดเห็นแบบหลายบรรทัดล้อมรอบด้วย / * และ * /
DECLARE
-- variable declaration
message varchar2(20):= 'Hello, World!';
BEGIN
/*
* PL/SQL executable statement(s)
*/
dbms_output.put_line(message);
END;
/
เมื่อรหัสด้านบนถูกเรียกใช้ที่พรอมต์ SQL จะให้ผลลัพธ์ดังต่อไปนี้ -
Hello World
PL/SQL procedure successfully completed.
หน่วยโปรแกรม PL / SQL
หน่วย PL / SQL คืออย่างใดอย่างหนึ่งต่อไปนี้ -
- บล็อก PL / SQL
- Function
- Package
- ตัวบรรจุภัณฑ์
- Procedure
- Trigger
- Type
- พิมพ์ body
แต่ละหน่วยงานเหล่านี้จะกล่าวถึงในบทต่อไปนี้