شما می توانید با ارسال ایمیل خود ، بصورت رایگان مشترک شده و از بروزسانی مطلع شوید.

ایمیل خود را وارد کنید:

اوراکل (ADF(Application Development Framework یک چارچوب(Framework)  کلی می باشد که برروی استانداردهای Java EE و تکنولوژی های Open Source جهت سادگی و پیاده سازی سریع تر برنامه های Java EE ایجاد شده است که کاملا توسعه پذیر و قابل تنظیم بوسیله افزودن یا اصلاح کتابخانه ها می باشد. ADF وظایف را از طریق ایجاد سرویس […]

CardLayout پنجره ای را در نظر بگیرید که شامل چندین پنل می باشد که در یک زمان فقط یکی از این پنل ها قابل مشاهده می باشد،با استفاده از کلاس java.awt.CardLayout شما می توانید کامپوننتی را ایجاد کنید که فقط یکی از این پنل ها را در یک زمان نمایش دهد، مانند شکل زیر: زمانی […]

اطلاعات سخت افزاری CPU اطلاعات CPU شامل جزئیاتی  مثل معماری ، نام سازنده ، مدل ، تعداد هسته ها ، سرعت هرکدام از هسته ها و غیره است. برای دسترسی به چنین جزئیاتی درباره سخت افزار CPU در لینوکس، تعداد بسیار اندکی کامند برای این منظور وجود دارد که ما در اینجا بطور مختصر تعدادی […]

بخش اول – مقدمه ای بر PL/SQL

PL/SQL یک زبان اضافه شده  است و یک استاندارد محسوب نمی شود. اراکل اولین نسخه PL/SQL را در سال ۱۹۹۱ ارائه کرد. PL/SQL یک زبان رویه ای با قابلیت تعامل اسان با پایگاه داده اراکل است که و برای استفاده از این زبان لازم نیست که بطور صریح نصب برنامه خاصی را انجام دهید و یا برای استفاده از ان امتیاز خاصی را از اراکل خریداری کنید.

قبل از انکه وارد بحث اموزش PL/SQL شویم لازم به توضیح است که در مطالبی که در مبحث PL/SQL ها مطرح می شود فرض بر این است که شما اشنایی و تسلط کافی را در مبحث پایگاه های دادهبه زبان استاندارد کار با پایگاه های داده یعنی SQL است که توسط اراکل ارائه شده و فقط هم در محصولات همین شرکت قابل استفادهای رابطه ای و زبان SQL را دارید.

PL/SQL و SQL

به عنوان برنامه نویسی که با پایگاه داده کار می کند شما برای کار با پایگاه داده اراکل از PL/SQL استفاده خواهید کرد. در ادامه چگونگی استفاده از PL/SQL و SQL در کنار هم و تفاوت های انها را شرح خواهیم داد

هدف از PL/SQL و SQL

SQL یک زبان استاندارد در صنعت پایگاه داده است که با استفاده از ان می توان اجزای یک پایگاه داده را ایجاد ‌تعییر یا حذف کرد. به این قسمت از دستورات زبان SQL اصطلاحا DDL یا همان زبان تعریف داده گفته می شود. همچنین با استفاده از زبان SQL می توانید برای ثبت بروزرسانی حذف و یا پرس و جو رو داده هایی که در پایگاه داده قرار دارد استفاده کنید که به این قسمت از زبان SQL اصطاحا DML یا همان زبان دستکاری داده ها گفته می شود. انچه که در اراکل به عنوان زبان SQL پیاده سازی شده است منطبق با SQL استانداردی که در صنعت پایگاه های داده از ان یاد می شود نیست البته بیان این نکته در اینجا خالی از لطف نخواهد بود که همه برنامه هایی پایگاه داده مانند MySQL و MS-SQL و .. هرکدام تفاوت هایی را با SQL استاندارد دارند و اراکل هم مستثنا از قاعده نیست. اراکل هم مفاهیم و مواردی در اختراع و ابداع کرده است که نه تنها در SQL استاندارد وجود ندارند بلکه در پایگاه داده های مشابه دیگر هم وجود ندارد مثل مبحث Sequence ها و پرس و جوهای بازگشتی که در پایگاه های داده دیگر پشتیبانی نمی شوند. اراکل تنها یک پایگاه داده نیست و شرکت اراکل در سایه پایگاه داده خود بسیاری محصولات دیگر را ارائه و بفروش می رساند. از محصولات اراکل می توان به موارد کلی زیر اشاره کرد.

سیستم مدیریت پایگاه داده اراکل

این پایگاه داده قابلیت اجرا بر روع انواع مختلفی از کامپیوتر ها و سیستم عامل ها را دارا می باشد و در حال حاضر بزرگترین سریع ترین قدرتمندترین و با امکانات ترین محصول در بازار سیستم های پایگاه داده به شما می رود. اراکل برای شرکت های بزرگی که با حجم های عظیمی از داده ها سروکار دارند به عنوان اولین گزینه مطرح است. البته اراکل نسخه هایی را نیز برای کار شرکت های متوسط و کوچک نیز ارائه می کند.

ابزار یک پارچه توسعه نرم افزار IDE

اراکل محصولات زیادی برای توسعه نرم افزار ارائه کرده است که در حال حاظر Jdeveloper اصلی ترین ان است و محیطی مبتی بر جاوا می باشد.

Oracle Application Server

برنامه های تحت وب معمولا توسط یک برنامه روی کامپیوتر های اختصاصی اجرا میشوند که نسخه ای توسط اراکل ارائه شده OAS نام دارد

SQL و PL/SQL زبان هایی هستند که ستون فقرات برنامه هایی که مبتنی بر پایگاه داده اراکل را شکل می دهند در هر نسخه از اراکل ارائه می شود قابلیت هایی جدیدی به هر دو بعد SQL و PL/SQL اضافه می شود. از PL/SQL زمانی استفاده می شود که وقتی از ان استفاده می شود که قرار است کدهایی را که می نویسید درون پایگاه داده قرار بگیرند در ادامه مواقعی که استفاده از PL/SQL مفید است را معرفی خواهیم کرد

استفاده از Trigger در پایگاه داده

trigger رخداد یا ایونتی در درون یک پایگاه داده است که می تواند باعث اجرای خودکار کدی بشودکه چهار نوع هستند

Table-Level Trigger : این نوع trigger ها در سطح جدول یعنی قبل یا بعد از زمانی که یک Insert Update و یا Delete بر روی جدولی اتقاق می افتد اجرا می شوند

View-Level Trigger: در واقع View یک دستور SQL ذخیره شده است که برنامه نویس می تواند بر روی ان پرس جوی خود را انجام دهد طوری که انگار با یک جدول در پایگاه داده مواجه است و نه فقط یک View حاصل از اجرای یک دستور SQL . این نوع Trigger ها در هنگام کار بر روی View ها اجرا می شود.

Database-Level Trigger: این نوع Trigger ها در زمان راه اندازی و خاموش شدن پایگاه داده فعال و اجرا می گردند.برای مثال یک پایگاه داده می تواند در هنگام راه اندازی یا خاموش شدن به پایگاه داده های دیگری که با انها در ارتباط است وضعیت خود را اطلاع دهد.

Session-Level Trigger:می توان از ان برای ذخیره اطلاعات خاصی استفاده کرد. برای مثال ممکن است در هنگام ورود / خروج کاربر به پایگاه داده کد خاصی اجرا گردد و یا بخواهید کدی را اجرا کنید که اطاعات مورد نیاز کاربر سریع را در حافظه باگذاری کنید تا دسترسی سریع تری را برای کاربر فراهم کنید

دو نوع اخری که در اخر معرفی شدند بیشتر توسط DBA ها استفاده می شوند. اکثر کدهای PL/SQL به عنوان واحدهای برنامهای در درون پایگاه داده ذخیره می شوند که یک برنامه معمولا شامل تعداد خط های زیادی کد است.

بعضی برنامه نویسان مخصوصا برنامه نویسان تحت وب که با جاوا و دات نت کار می کنند سعی می کنند اکثر کدهای خود را در اپیلکیشن سرور به زبانی که کار می کنند بنویسند که کار درستی نیست. در برنامه هایی بیشتر منطق برنامه به بازیابی و بروزرسانی داده ها اختصاص می یابد اگر کد مربوط به انجام این کارها در اپلیکیشن سرور قرار گیرد باید یک درخواست از طریق شبکه به پایگاه داده ارسال کند سپس پایگاه داده درخواست را دریافت کرده انرا پردازش کند و سپس در جواب اطلاعات را روی شبکه به اپیکیشن سرور و برنامه ارسال کند ممکن است این عملیات با توجه به سرعت شبکه ها و سخت افزارهای امروزی چندان محصوص نباشد اما باید دقت کرد که این سرعت بسیار زیاد فقط برای یک عملیات ساده است که انقدر سریع به نظر می رسد. اگر یک برنامه بسیار پیچیده که نیازمند میلیون ها و یا حتی صد ها میلیون تعامل و دسترسی به پایگاه داده باشد جمع زمان صرف شده برای این تعداد عملیات باعث افت شدید کارایی سیستم می شود. حتی ممکن است جواب گویی به درخواست هایی ساده هم بدلیل ترافیک شبکه دچار اختلال شود.

پیاده سازی سیستم هایی که تعامل زیادی را پایگاه داده طلب می کند برای داشتن کارایی مناسب بدون استفاده از کدهای سمت پایگاه داده بسیار مشکل است.

یکی از بحث هایی که در مورد استفاده از کدهای سمت پایگاه داده وجود دارد این است که استفاده از انها باعث جلوگیری از قابلیت حمل برنامه می شود. این موضوع در حالی مطرح می شود که سازمان هایی که از اراکل استفاده می کنند مدت زیادی است که در حال استفاده از ان هستند و قصد تعویض و رفتن روی پلتفرم پایگاه داده ای دیگری را ندارند در حالی که پلتفرم های توسعه برنامه های تحت وب سازمانی نسبت به پایگاه داده مورد استفاده در سازمان بیشتر دستخوش تغییر می شود و دائما در حال تغییر از جاوا به دات نت و بلعکس است.

دیدگاه خود را به ما بگویید.