برای ارتباط با پشتیبانی سامانه سپاس با شماره 82804882 (021) تماس حاصل فرمائید.

Synonyms

توضیحات Synonym یک نام جایگزین است برای انواع آبجکت‌های اوراکل مانند جدول، ویو، پروسیجر و غیره. Synonym اصولا زمانی ساخته می‌شود که به یک یوزری دسترسی داده می‌شود برای آبجکتی از اسکیمای دیگر. دستور با دستور زیر می‌توان synonym تعریف کرد. 12 CREATE [OR REPLACE] [PUBLIC] SYNONYM [schema .] synonym_name  FOR [schema .] object_name [@ dblink]; […]

Declare a cursor

توضیحات Cursor یک دستور select است که در قسمت declaration کد pl/sql قرار می‌گیرد . دستور با دستور زیر می‌توان یک cursor بدون پارامتر تعریف کرد: 123 CURSOR cursor_nameIS  SELECT_statement; با دستور زیر می‌توان یک cursor با پارامتر تعریف کرد: 123 CURSOR cursor_name (parameter_list)IS  SELECT_statement; با دستور زیر می‌توان یک cursor تعریف کرد که مقداری را بازگرداند: […]

Close a cursor

توضیحات قدم آخر برای کار با cursor، بستن آن است. دستور دستور برای بستن cursor از دستور زیر استفاده می‌کنیم: 1 CLOSE cursor_name; . مثال مثالی از کار با cursor: 1234567891011121314151617181920212223242526 CREATE OR REPLACE Function FindCourse   ( name_in IN varchar2 )   RETURN numberIS   cnumber number;    CURSOR c1   IS     SELECT course_number     FROM courses_tbl     WHERE course_name = name_in; BEGIN    OPEN c1;   FETCH c1 INTO cnumber;    if c1%notfound then      cnumber := […]

Open cursor

توضیحات بعد از این‌که cursor را تعریف کردیم قدم بعدی باز کردن آن است. دستور با دستور زیر می‌توان یک cursor را باز کرد: 1 OPEN cursor_name; . مثال مثالی از استفاده از cursor: 1 OPEN c1;

Fetch a cursor

توضیحات قدم بعدی برای استفاده از cursor، fetch کردن آن است. دستور دستور برای Fetch کردن cursor: 1 FETCH cursor_name INTO variable_list; variable_list: لیست متغیرهایی که می‌خواهید مقادیر cursor را در آن ذخیره کنید. مثال مثال‌هایی از تعریف cursor با پارامتر و بدون پارامتر: 1234567 CURSOR c1IS   SELECT course_number   FROM courses_tbl   WHERE course_name = name_in; FETCH c1 into cnumber;

Cursor Attributes

توضیحات هنگام کار کردن با cursorها ممکن است لازم باشد که وضعیت آن تعیین شود. مثال در زیر مثالی از استفاده cursor attribute را مشاهد می‌کنیم: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 CREATE OR REPLACE […]

Select For Update

توضیحات این دستور این اجازه را می‌دهد تا رکوردی که cursor بر روی آن قرار داد lock شود و لزوما نباید تغییری داد بر روی این رکورد و این lock زمانی برطرف می‌شود که commit یا rollback اتفاق بیافتد. دستور دستور select for update: 1 2 3 4 CURSOR cursor_name IS    select_statement    FOR UPDATE [OF […]

Where Current Of

توضیحات اگر بخواهیم رکوردی که با دستور select for update ، lock شده است را update یا delete کنیم باید از دستور where current of استفاده کنیم. دستور دستور where current of را این‌گونه می‌توان استفاده کرد: 123456 UPDATE table_name  SET set_clause  WHERE CURRENT OF cursor_name; DELETE FROM table_nameWHERE CURRENT OF cursor_name; مثال مثال‌هایی از استفاده where current […]

Enable Foreign Key

توضیحات ممکن است گاهی با کلید خارجی برخورد کنیم که غیر فعال است می‌توان آن را با دستور Alter Table فعال کرد. دستور دستوری که کلید خارجی را فعال می‌کند: 1 2 ALTER TABLE table_name ENABLE CONSTRAINT constraint_name; همچنین می‌توان با دستور زیر کلید خارجی را غیر فعال کرد: 1 2 ALTER TABLE table_name DISABLE […]

Foreign Keys with Cascade Delete

توضیحات کلید خارجی با cascade delete به این معناست که اگر رکوردی در جدول اصلی حذف شود در جدولی که به عنوان کلید خارجی به آن اشاره شده است نیز حذف می‌شود. دستور قابلیت cascade delete را می‌توان با دستور create table یا Alter table فعال کرد: 1234567891011121314151617 CREATE TABLE table_name(  column1 datatype null/not null,  column2 datatype […]