در اوراکل PL / SQL اجرای پروژه OS دستورات شامل PL بسته / SQL OS_COMMAND، FILE_TYPE و FILE_PKG که یک توسعه دهنده پایگاه داده اوراکل را قادر به تعامل با سیستم عامل و یا با فایل های عادی و nbsp؛ اوراکل فراهم می کند خارج از جعبه فقط برای دسترسی به سیستم فایل و هیچ قابلیت اجرای دستورات پوسته یا فرایندهای سیستم عامل قابلیت محدود شده است. می PL اسکریپت / SQL گسترش از طریق اینترنت و در انجمن اوراکل وجود دارد اما هیچ بسته آماده به نصب وجود دارد. این پروژه در مورد به ارائه دقیقا این است.
به طور کلی حداقل سه راه برای اجرای دستورات پوسته توسط موتور اوراکل وجود دارد.
از & nbsp؛ 1. برنامه نویسی کتابخانه مشترک مادری، آن مرجع در پایگاه داده اوراکل با استفاده از ایجاد کتابخانه و ایجاد یک PL / SQL لفاف بسته بندی در توابع خاص است. این یک کامپایلر C برای پلت فرم اوراکل در حال اجرا است مورد نیاز است.
از & nbsp؛ 2. با استفاده از DBMS_SCHEDULER بسته اوراکل عرضه است که قادر به اجرای دستورات پوسته. اما DBMS_SCHEDULER فاقد دسترسی به STDIN و STDOUT. در صورتی که این مورد نیاز است، DBMS_SCHEDULER یک گزینه نیست، خرد است.
از & nbsp؛ 3. از آنجا که Oracle8i یک موتور جاوا J2SE سازگار موجود در پایگاه داده وجود دارد. به عنوان هر موتور دیگر جاوا آن است که قادر به اجرای دستورات پوسته از طریق روش System.exec. API JDBC اجازه می دهد تا به تصویب محتویات STDIN، STDOUT یا مقادیر بازگشتی OS بازگشت به موتور SQL. و از آنجایی که جاوا مستقل از پلتفرم یکی نصب اسکریپت آیا این کار برای همه سیستم عامل. بنابراین من تصمیم برای جاوا در پایگاه داده در زمان.
بسته اجرا می شود در اوراکل 10.1 یا بالاتر
در چه در این نسخه جدید است:
در فایل های جدا برای Oracle10 و Oracle11g - روش OS_COMMAND.LOAD_ENV در دسترس در 10G نیست.
پشتیبانی از دایرکتوری های کار هنگام اجرای دستورات پوسته
پشتیبانی از متغیرهای محیط های سفارشی
FILE_TYPE مورد نیاز دیگر امتیازات نوشتن زمانی که فقط خواندن فایل
PL بسته / SQL در حال حاضر با حقوق invokers 'کار می کند
دریافت اطلاعات خاص محیط زیست: دایرکتوری ریشه و شخصیت نام جدا
روش get_parent (): FILE_TYPE
نظر یافت نشد