SQL ба PL SQL
SQL (Structured Query Language) нь оролтын харилцааны мэдээллийн санг бичих стандарт хэл юм. SQL нь хэрэглэгчийн хэрэгцээ шаардлагад нийцүүлэн бүртгэлийг сэргээх, оруулах, устгах, шинэчлэх боломжийг олгодог энгийн хэллэг юм. Энгийнээр энэ нь өгөгдлийг сонгох, удирдахад зориулагдсан өгөгдөлд чиглэсэн хэл юм. PL SQL (Procedural Language/Structured Query Language) нь Oracle-аас өгөгдөл оруулах, удирдахад зориулагдсан процедурын өргөтгөлийн хэл юм.
“PL/SQL, Oracle-ийн SQL-ийн процедурын өргөтгөл нь дөрөв дэх үеийн дэвшилтэт програмчлалын хэл (4GL) юм. Энэ нь өгөгдлийн бүрхүүл, хэт ачаалал, цуглуулгын төрөл, онцгой тохиолдлуудыг зохицуулах, мэдээллийг нуух зэрэг орчин үеийн функцуудыг санал болгодог. PL/SQL нь мөн SQL-д саадгүй хандалт, Oracle сервер болон хэрэгслүүдтэй нягт уялдаа холбоотой байх, зөөвөрлөх чадвар, аюулгүй байдлыг санал болгодог."
SQL
“Үргэлжлэл” гэж дуудагддаг бүтэцлэгдсэн асуулгын хэл (SQL) нь харилцааны өгөгдлийн сангийн удирдлагын систем (RDBMS) дахь өгөгдлийг удирдахад зориулагдсан өгөгдлийн сангийн компьютерийн хэл бөгөөд анх харилцааны алгебр дээр суурилдаг.
SQL-ийн үндсэн хамрах хүрээ нь өгөгдөл оруулах, өгөгдлийн сангийн эсрэг шинэчлэх, устгах, схем үүсгэх, схемийг өөрчлөх, өгөгдөлд хандах хяналтыг гүйцэтгэх явдал юм.
SQL нь дараах дэд хэсгүүдэд хуваагдсан элементүүдтэй:
Асуулга – Тодорхой шалгуурт тулгуурлан өгөгдөл татаж авах. Асуулгад ашиглаж болох цөөн хэдэн түлхүүр үг байдаг. (Сонгох, Хаана, Байх, Бүлэглэх, дарааллаар нь сонгоно)
жишээ нь: 1-р хүснэгтээс СОНГОХ > нөхцөл 2-р баганаар ЗАХИАЛАХ;
Мэдэгдэл – Гүйлгээ, хөтөлбөрийн урсгал, холболт, сесс, оношилгоог хянах боломжтой
Илэрхийлэл - Энэ нь аль алиныг нь үүсгэж болно;
Скаляр утгууд
Өгөгдлийн багана ба мөрүүдээс бүрдэх хүснэгтүүд
Тодорхойлолт -SQL Boolean (үнэн/худал/үл мэдэгдэх)-ээр үнэлж болох нөхцөлүүдийг зааж өгөх
Зүйлүүд – Мэдэгдэл болон асуулгын бүрэлдэхүүн хэсгүүд
PL/SQL
PL/SQL (Procedural Language/Structured Query Language) нь Oracle корпорацийн SQL болон Oracle харилцааны мэдээллийн санд зориулсан процедурын өргөтгөлийн хэл юм. PL/SQL нь хувьсагч, нөхцөл, гогцоо, массив, үл хамаарах зүйлийг дэмждэг. PL/SQL нь үндсэндээ кодын контейнеруудыг oracle мэдээллийн санд оруулах боломжтой. Тиймээс програм хангамж хөгжүүлэгчид өгөгдлийн санд PL/SQL функцийн нэгжийг шууд суулгах боломжтой.
PL/SQL програмын нэгжийг дараах байдлаар тодорхойлж болно:
Нэргүй блокууд
Хамгийн энгийн PL/SQL кодын үндэс суурийг бүрдүүлдэг
Функцууд
Функцууд нь SQL болон PL/SQL хэллэгүүдийн цуглуулга юм. Функц нь даалгаврыг гүйцэтгэх бөгөөд дуудлага хийх орчинд утгыг буцаах ёстой.
Журмын
Процедурууд нь Функцуудтай адилхан. Ажил гүйцэтгэхийн тулд процедурыг мөн гүйцэтгэж болно. Процедурыг SQL хэллэгт ашиглах боломжгүй, олон утгыг буцаах боломжтой. Үүнээс гадна функцуудыг SQL-ээс дуудаж болох ба процедурыг дуудах боломжгүй.
Багцууд
Багц ашиглах нь кодыг дахин ашиглах явдал юм. Багцууд нь онолын хувьд холбогдсон функц, процедур, хувьсагч, PL/SQL хүснэгт болон бичлэгийн TYPE мэдэгдэл, Тогтмол ба курсор гэх мэтийн бүлгүүд юм… Багцууд нь ихэвчлэн тодорхойлолт, бие гэсэн хоёр хэсэгтэй байдаг
Багцын хоёр давуу тал нь:
Модульчлагдсан арга, бизнесийн логикийн багтаамж
Багцын хувьсагчийг сешн түвшинд зарлах боломжтой
PL/SQL дахь хувьсагчийн төрлүүд
Хувьсагч
Тоон хувьсагч
Тэмдэгтийн хувьсагч
Огнооны хувьсагч
Тодорхой баганын өгөгдлийн төрөл
SQL болон PL/SQL-ийн ялгаа
SQL нь өгөгдлийг сонгох, удирдахад зориулагдсан өгөгдөлд чиглэсэн хэл боловч PL SQL нь програм үүсгэх процедурын хэл юм.
SQL нь нэг удаад нэг мэдэгдлийг гүйцэтгэдэг бол PL-д SQL блок кодын гүйцэтгэх боломжтой.
SQL нь тунхаглал бөгөөд PL SQL нь процедурын хувьд.
SQL нь Query, Data Manipulation Language (DML) and Data Definition Language (DDL) бичихэд ашиглагддаг бол PL SQL нь програмын блок, Triggers, Functions, Procedures, and Packages бичихэд ашиглагддаг.
Товчлол:
SQL нь бүтэцлэгдсэн асуулгын хэл юм. SQL-д мэдээллийн санг хялбаршуулсан байдлаар зохицуулахын тулд янз бүрийн асуулга ашигладаг. PL/SQL нь янз бүрийн төрлийн хувьсагч, функц, процедурыг агуулсан процедурын хэл юм. SQL нь хөгжүүлэгчдэд нэг асуулга гаргах эсвэл нэг удаад нэг оруулах/шинэчлэх/устгах үйлдлийг гүйцэтгэх боломжийг олгодог бол PL/SQL нь программыг иж бүрэн бичих боломжийг нэгэн зэрэг хэд хэдэн сонголт/оруулах/шинэчлэх/устгах боломжийг олгодог. SQL бол PL/SQL програмчлалын хэл байхад өгөгдөлд чиглэсэн энгийн хэл юм.