Procedure
دستور
با دستور زیر میتوان procedure تعریف کرد.
| ۱۲۳۴۵۶۷۸۹۱۰۱۱۱۲۱۳ | CREATE [OR REPLACE] PROCEDURE procedure_name [ (parameter [,parameter]) ] IS [declaration_section] BEGIN executable_section [EXCEPTION exception_section] END [procedure_name]; |
In: متغیری که با In میآید read-only است و فقط میتوان از خود مقدار آن درون پروسیجر استفاده کرد.
OUT: متغیری است که فقط write-only است و میتوان در برنامهای که از این پروسیجر استفاده شده از مقدار این متغیر استفاده کرد.
IN OUT: متغیری است که ویژگیهای In و Out را همزمان دارد.
مثال
مثالهایی از ایجاد index:
| ۱۲۳۴۵۶۷۸۹۱۰۱۱۱۲۱۳۱۴۱۵۱۶۱۷۱۸۱۹۲۰۲۱۲۲۲۳۲۴۲۵۲۶۲۷۲۸۲۹۳۰۳۱۳۲۳۳۳۴۳۵ | CREATE OR REPLACE Procedure UpdateCourse ( name_in IN varchar۲ ) IS cnumber number; cursor c۱ is SELECT course_number FROM courses_tbl WHERE course_name = name_in; BEGIN open c۱; fetch c۱ into cnumber; if c۱%notfound then cnumber := ۹۹۹۹; end if; INSERT INTO student_courses ( course_name, course_number ) VALUES ( name_in, cnumber ); commit; close c۱; EXCEPTIONWHEN OTHERS THEN raise_application_error(-۲۰۰۰۱,\'An error was encountered - \'||SQLCODE||\' -ERROR- \'||SQLERRM);END; |
