دانلود آموزش SQL شامل مطالب Oracle Database 12c R2: SQL Workshop I و Oracle Database 12c R2: SQL Workshop II(نویسنده مطلب: مهندس میلاد خالقی)
دانلود آموزش برنامه نویسی PL/SQL برای دیتابیس اوراکل(نویسنده مطلب: مهندس میلاد خالقی)
……..آموزش، مشاوره و پشتیبانی…….
دانلود آموزش SQL شامل مطالب Oracle Database 12c R2: SQL Workshop I و Oracle Database 12c R2: SQL Workshop II(نویسنده مطلب: مهندس میلاد خالقی)
دانلود آموزش برنامه نویسی PL/SQL برای دیتابیس اوراکل(نویسنده مطلب: مهندس میلاد خالقی)
در دیتابیس اوراکل انواع مختلفی از ایندکسها وجود دارند که از آنها به منظور بهبود کارایی دیتابیس استفاده می شود ولی هر کدام دارای کاربرد و ساختار متفاوت هستند. در این متن ایندکس های از نوع BITMAP که فقط در نسخه های ENTERPRISE اوراکل قابل تعریف و استفاده هستند را توضیح می دهیم.
گاهی اوقات برخی OBJECTها یا رکوردهای جداول، به منظور عملیات DML در اختیار یک SESSION خاص قرار گرفته و LOCK شده اند بنابراین کاربران دیگر نمی توانند بر روی آنها از دستورات DML استفاده کنند. در این مواقع می بایست این دسته از SESSIONها را شناسایی کرد و عمل KILL کردن آنها را انجام داد تا پس از ROLLBACK اتوماتیک عملیات، OBJECTها یا رکوردهای مورد نیاز آزاد گردند.
در ادامه دو روش مختلف برای انجام عملیات شناسایی و KILL کردن SESSIONهای LOCK کننده معرفی می کنیم.
در PL/SQL با استفاده از نوع (OBJECT (OBJECT TYPE می توان برنامه نویسی شی گرا یاOBJECT ORIENTED انجام داد. در OBJECT واسط ها و جزییات پیاده سازی از هم جدا می شوند و در دیتابیس ذخیره گردند. این روش، زمان و هزینه پیاده سازی برنامه های پیچیده را کاهش می دهد و خاصیت انتزاع (ABSTRACTION) و ترکیبی بودن را برقرار می کند.
در دیتابیس اوراکل تعدادی پکیج به صورت BUILT-IN تعریف شده اند که به آنها پکیج های DBMS می گویند. این پکیج ها کاربردهای مختلفی دارند و می توان از آنها در زمان ساخت برنامه ها بهره برد.
در ادامه آموزش PL/SQL، در این قسمت پکیج (PACKAGE) را توضیح می دهیم. پکیج یکی از OBJECT های دیتابیس اوراکل است که متغیرها، زیربرنامه ها و … که از لحاظ منطقی به هم مرتبط هستند را در یک گروه قرار می دهد.
برای هر پکیج دو قسمت تعریف می شود:
1.قسمت مشخصات پکیج یا PACKAGE SPECIFICATION
2.قسمت بدنه پکیج یا (PACKAGE BODY(DEFINITION
در ادامه این دو قسمت را توضیح می دهیم.
در این قسمت TRIGGER و روش استفاده از آن را توضیح می دهیم. TRIGGER یک بلاک برنامه ذخیره شده در دیتابیس اوراکل است که همزمان با رخدادهای خاص به صورت اتوماتیک اجرا (FIRE) می شود.
رخدادهایی که سبب اجرای یک TRIGGER می شوند عبارتند از:
1.رخداد دستورات DML
2.رخداد دستورات DDL
3.رخدادهای خاص در دیتابیس مانند LOGON، LOGOFF، STARTUP و SHUTDOWN
در این قسمت EXCEPTION و روش استفاده از EXCEPTION-HANDLER را توضیح می دهیم. منظور از EXCEPTION رخداد خطا در زمان اجرای برنامه است. برای مثال به دنبال اطلاعاتی هستیم که در دیتابیس وجود ندارند یا یک ورودی اشتباه به زیربرنامه ارسال می کنیم.
زبان PL/SQL با استفاده از بلاک EXCEPTION-HANDLER به برنامه نویس کمک می کند تا نوع EXCEPTION برنامه را متوجه شود و در زمان رخداد آنها دستورات مناسب را اجرا کند.
در این قسمت رکورد (RECORD) در PL/SQL و روش استفاده از آن را توضیح می دهیم. رکورد یک ساختمان داده است که آیتم های متفاوت را کنار هم نگه می دارد. یعنی بر خلاف آرایه، این آیتم ها نوع داده متفاوت دارند. به همین جهت، هر سطر از جدول را یک رکورد می نامند زیرا معمولا سطرها از ستون های با نوع داده متفاوت تشکیل شده اند.
برای مثال می خواهیم اطلاعات کتاب های یک کتابخانه را بررسی کنیم. برای این کتاب ها مشخصات مختلف از جمله عنوان، نام نویسنده، موضوع کتاب و شماره کتاب وجود دارد. بنابراین برای آن ها یک رکورد با فیلدهای مورد نیاز تعریف می کنیم و اطلاعات مورد نظر را به شیوه بهتر دسته بندی کرده و نمایش می دهیم.
در PL/SQL می توان رکورد را به سه روش زیر تعریف کرد که در ادامه توضیح می دهیم.