اوراکل اپکس-اجراي دستورات DDL در اوراكل

کاراکتر [/] و [;] در اجرای دستورات DDL در اوراكل

شايد بارها براي شما اتفاق افتاده باشد كه در انتهاي دستورات DDL خود در اوراکل از دو علامت Slash و Semicolons استفاده كرده باشيد، در محيط  ابزارهايی كه دارای محيط های گرافيكی هستند همانند : Toad-SQL Developer،  همچنين در محيط Command Base SQL*PLUS و …
اگر از هردوی اين دو در انتهاي اسكريپت ها استفاده كنيم چه اتفاقی مي افتد. براي درك بهتر به مثال زير توجه كنيد:
drop table foo;
/
create table foo
( id number
,code varchar2(10)
,description varchar2(100)
);
/
create or replace trigger foo_trig_bi
before insert on foo
for each row
begin
:new.id := nvl(:new.id,foo_seq.nextval) ;
end;
/
توسعه دهنده اسكريپت بالا را در محيط GUI مثل SQL Developer اجرا ميكند و بصورت كامل و بدون خطا اجرا مي شود و خروجی همانند زير را دريافت مي كند.

Table FOO dropped.
Table FOO Created.
Trigger FOO_TRIG_BI Compiled.
سپس توسعه دهنده اسكريپت بالا را براي DBA مي فرستد كه آن را در محيط Production و در محيط SQL*PLUS اجرا كند، ولي اجرای آن بصورت كامل و صحيح اجرا نمي شود و با خطا مواجه مي شود. زيرا مي خواهد حذف و ايجاد جدول رو دوبار انجام دهد. فقط اینکه برای تریگر (;) نیاز می باشد زیرا پایان یک بلاک PL/SQL را مشخص می کند.
راه حل:
بايد از يكی از دو علامت Slash يا Semicolons را بعد از Drop و Create جدول در اوراکل استفاده نماييم. مانند شكل زير:
اوراکل اپکس-Slash يا Semicolons

 

4/5 - (1 امتیاز)

2 دیدگاه. همین الان خارج شوید

  • هوشمند راستین
    دی 4, 1398 1:40 ب.ظ

    با سلام دوست گرامی آقای مهندس سعید حسن پور

    اول تشکر میکنم از اینکه مطالب مفید و بسیار خوبی که در سایتتون قرار میدید و بصورت عمومی در اختیار همه قرار میدید.
    دوم اینکه اگه مطلبی در زمینه apex collections از نظر نحوه اجرا و کارکرد و کاربرد آن در سایت بگذارید خیلی ممنون میشم.
    سوم اینکه اگه مطالبی داشته باشیم به چه صورت می تونیم در اختیارتون بگذاریم تا در سایتتون قرار دهید.

    ممنون و سپاس

    پاسخ
    • سعید حسن پور
      دی 5, 1398 3:30 ق.ظ

      با سلام خدمت دوست گرامی
      برای اینکه نظر خودتان را اظهار می کنید بسیار سپاسگذارم.

      دوم اینکه اگه مطلبی در زمینه apex collections از نظر نحوه اجرا و کارکرد و کاربرد آن در سایت بگذارید خیلی ممنون میشم.

      اگر فرصت شود بله حتما مطلبی در این خصوص ارائه خواهد شد.

      سوم اینکه اگه مطالبی داشته باشیم به چه صورت می تونیم در اختیارتون بگذاریم تا در سایتتون قرار دهید.

      اجازه دهید بررسی کنم نتیجه را به شما اعلام می کنم.

      پاسخ

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این قسمت نباید خالی باشد
این قسمت نباید خالی باشد
لطفاً یک نشانی ایمیل معتبر بنویسید.

Oracle APEX Capabilities (OAC)