پی‌ال/اس‌کیوال کیست؟ توضیح بده.
زبان PL/SQL محصول شرکت اوراکل است که برای SQL و ارتباط بین دیتا بیس ساخته شد.PL/SQL سینتکسی مشابه با زبان‌های Ada,Pascal دارد.PL/SQL یکی از سه زبان برنامه‌نویسی ای است که در پایگاه داده اوراکل (Oracle Database) به همراه SQL و جاوا (Java) وجود دارد.این زبان از نسخه ۷ پایگاه داده اوراکل در ان قرار گرفته شده‌است.این زبان ساختارهایی مانند متغیر، عبارات شرطی، حلقه‌های تکرار وساختارهای استثنا را دارا می‌باشد. همچنین از ساختار ارائه نیز پشتیبانی می‌کند.هنگامی که یک برنامه در پایگاه داده ذخیره می‌شود امکان اجرای آن در زمان‌های بعدی فراهم می‌شود.در حالی که برنامه نویسان به راحتی می‌تواند جاسازی زبان دستکاری داده‌ها را انجام دهند اظهارات به‌طور مستقیم به کد PL / SQL با استفاده از اظهارات صریح زبان SQL نیاز به تعریف داده‌های پیچیده‌تر «پویا» در PL / SQL است با این حال، اظهارات DML زیر بنای اکثر کدهای PL / SQL را در برنامه‌های کاربردی فراهم می‌کند.شرکت اوراکل به صورت عادی بسته‌هایی ازبرنامه‌ها را در نسخه‌های مختلف دیتا بیس خود گسترش داده است.بخش برنامه‌ای PL/SQL.قالب‌های ناشناس.بخش برنامه می‌تواند قالب‌ها را نام‌گذاری کند یا نکند. قالب‌های نام‌گذاری نشده به عنوان قالب‌های ناشناس شناخته می‌شوند زیرا آن‌ها در پایگاه داده ذخیره نمی‌شوند پس هیچ نامی نخواهند داشت. ما معمولاً از قالب‌های نا آشنا هنگام ساخت اسکریپت‌هایی برای داده‌هایی که می‌خواهیم یک بار فعال شوند استفاده می‌کنیم. این روش وقتی مؤثر است که ما می‌خواهیم فعالیت یک بخش را به بخش دیگر منتقل کنیم.Exceptions خطاهایی که در مرحله اجرای کد ایجاد می‌شوند دارای یکی از دو مدل زیر هستند:Exceptionsهایی که توسط کاربر ایجاد می‌شوند همیشه یه صورت صریح توسط یرنامه‌نویس ایجاد می‌شوند، با استفاده از کامندهای RAISE و RAISE_APPLICATION_ERRO در مواقعی که ما به‌طور قطع می‌دانیم که راه معمولی ای برای ادامه اجرا وجود ندارد.RAISE کامندی مانند زیر دارد:RAISE &lt;exception name&gt;;شرکت اوراکل چند استثنا از پیش تعریف شده مانند NO_DATA_FOUND ,TOO_MANY_ROWS، دارد. هر استثناء شماره خطا در SQL و پیام خطا مرتبط با آن را دارد. برنامه نویسان می‌توانند با استفاده از SQLCODE و SQLERRM به نابع هر کدام دسترسی داشته باشد.declare number1 number(2); number2 number1%type := 17; -- value default text1 varchar2(12) := 'Hello world'; text2 date := SYSDATE; -- current date and timebegin SELECT street_number INTO number1 FROM address WHERE name = 'INU';end;توابع.توابع در PL/SQL گروهی از توابع در PL/SQL و SQL هستند که جملات ان یک وظیفه خاصی را انجام می‌دهد و باید مقدار یا مقادیر خود را به محیط فراخوانی شده بفرستد. توابع تعریف شده توسط کاربر برای تکمیل کردن صدها تابعی که به وسیله شرکت اوراکل ایجاد شده‌است استفاده می‌شود.در این زبان سه نوع مختلف از پارامترها وجود دارد: in ,out in outرویه‌ها.رویه‌ها مشابه توابع هستند که می‌توانند برای انجام کار اجرا شوند. تفاوت اصلی رویه‌ها با توابع این است که رویه‌ها نمی‌توانند در جملات SQL استفاده شوند. تفاوت دیگر آن‌ها در این است که می‌توانند چندین مقدار را برگردانند. PL/SQL تفاوت‌های بسیاری را میان توابع و رویه‌ها حفظ کرده‌است که در اهداف نوشتن برنامه می‌توانیم آن‌ها را پیدا کرد.بسته‌ها.بسته گروه مفهومی مرتبط با توابع، رویه‌ها، مقادیر، جملات و… هستند. استفاده از بسته به دلیل ترویج استفاده مجدد از کد است. بسته‌ها متشکل از مشخصات بسته و بدنه بسته است که به صوزت اختیاری تعریف می‌شود.دو مزیت استفاده از بسته این است که:متغیرهای عددی.برای تعریف متغیرهای عددی برنامه‌نویس باید متغیر از نوع عدد را برای نام تعریف کند.