الانتقال إلى المحتوى

اريد ان اعرف اللايرور فى الproceduor الرد سريعا دى شغل ورايا


shode

Recommended Posts

create or replace procedure manoo is
cursor c_cursor is
select  UID ,AR_NAME , EN_NAME , GENDER, BIRTH_DATE ,NATIONAL_ID , ADDRESS, TEL_HOME , TEL_OFFICE , MOBILE, FAX , EMAIL, SPECIALIZATION, ORGANIZATION , JOB , FACULTY , UNI ,SECTOR , RESEAQRCHCENTER   
from main where main.en_name= asmaa.en_name;

begin open c_cursor

for i in c_cursor loop
fetch c_cursor into main1 (UID ,AR_NAME , EN_NAME , GENDER, BIRTH_DATE ,NATIONAL_ID , ADDRESS, TEL_HOME , TEL_OFFICE , MOBILE, FAX , EMAIL, SPECIALIZATION, ORGANIZATION , JOB , FACULTY , UNI ,SECTOR , RESEAQRCHCENTER )
values (i.UID ,i.AR_NAME , i.EN_NAME , i.GENDER, i.BIRTH_DATE ,i.NATIONAL_ID , i.ADDRESS, i.TEL_HOME , i.TEL_OFFICE , i.MOBILE, i.FAX , i.EMAIL, i.SPECIALIZATION, i.ORGANIZATION , i.JOB , i.FACULTY , i.UNI ,i.SECTOR , i.RESEAQRCHCENTER );
exit when asmaa%not found
end loop;
end;



/
show error




يظهر لى الايرور دى
PLS-00103: Encountered the symbol "C_CURSOR" when expecting one o f the following: (





ارجو الافادة ضرورىىىىىىىىىىىىىىىىىىىى

رابط هذا التعليق
شارك

بصراحة أنا أول مرة بشوف هيك استعمال للكيرسر...
أنت متأكد من هل طريقة into ...values
ليكون قصدك insert بدل fetch
إذا متأكد ممكن تشرحيلنا هل طريقة..
و إذا مو متأكد بقلك شو الطريقتين الطبيعيتين لاستعمال الكيرسر..

تم تعديل بواسطة TROYMAN
رابط هذا التعليق
شارك

أول شي from main where main.en_name= asmaa.en_name; خطأ
لازم :
from main where main.en_name in (select en_name from asmaa)
تاني شي يوجد طريقتين للتعامل مع الكيرسر الصريحة
أول طريقة : فتح الكيرسر --> عمل حلقة و ضمنها أعمل Fetch --> و بحط شرط ضمن الحلقة exit when CursorName%not found مشان عملية الإغلاق
الطريقة الثانية : عمل حلقة متل يلي عاملتيها و هي طبعاً حلقة خاصة بالكيرسرز و ما في داعي لا تفتحي الكيرسر و لا تسكريها لأنو بيصير هل الشي ضمنياً
يعني إلغي open c_cursor و exit when asmaa%not found مع الملاحظة أنك حاطة اسم الفيو بدل اسم الكيرسر..
و أي استفسار أنا جاهز...

يعني البروسيدجر بجيب بيانات كاملة عن السجلات يلي موجود بالفيو من الجدول الأساسي و بيعملها إقحام في جدول آخر...
طيب في طريقة أحسن أنك تعملي Trigger يقوم بهذه العملية لوحده عند كل إقحام بالفيو ...

تم تعديل بواسطة TROYMAN
رابط هذا التعليق
شارك

اولا طبعا شكرا جدا
ثانيا انا عيزاك بعد اذنك تعكتب الكود الصحيح طبعا بعد ما نشيل اوبن واكسيت وين
تمام وياريت لو تعرف تكتب كمان التريجير معلش انا بكتر عليك بس انا مبفهمش بالكلام بفهم بالكود

رابط هذا التعليق
شارك

create or replace procedure manoo is
cursor c_cursor is
select UID ,AR_NAME , EN_NAME , GENDER, BIRTH_DATE ,NATIONAL_ID , ADDRESS, TEL_HOME , TEL_OFFICE , MOBILE, FAX , EMAIL, SPECIALIZATION, ORGANIZATION , JOB , FACULTY , UNI ,SECTOR , RESEAQRCHCENTER 
from main where main.en_name= asmaa.en_name;

begin for i in c_cursor loop
insert into   main1 (UID ,AR_NAME , EN_NAME , GENDER, BIRTH_DATE ,NATIONAL_ID , ADDRESS, TEL_HOME , TEL_OFFICE , MOBILE, FAX , EMAIL, SPECIALIZATION, ORGANIZATION , JOB , FACULTY , UNI ,SECTOR , RESEAQRCHCENTER )
values (i.UID ,i.AR_NAME , i.EN_NAME , i.GENDER, i.BIRTH_DATE ,i.NATIONAL_ID , i.ADDRESS, i.TEL_HOME , i.TEL_OFFICE , i.MOBILE, i.FAX , i.EMAIL, i.SPECIALIZATION, i.ORGANIZATION , i.JOB , i.FACULTY , i.UNI ,i.SECTOR , i.RESEAQRCHCENTER );
end loop;
end

رابط هذا التعليق
شارك

create or replace procedure manoo is
cursor c_cursor is
select UID ,AR_NAME , EN_NAME , GENDER, BIRTH_DATE ,NATIONAL_ID , ADDRESS, TEL_HOME , TEL_OFFICE , MOBILE, FAX , EMAIL, SPECIALIZATION, ORGANIZATION , JOB , FACULTY , UNI ,SECTOR , RESEAQRCHCENTER 
from main where main.en_name in (select en_name from asmaa); begin for i in c_cursor loop
insert into   main1 (UID ,AR_NAME , EN_NAME , GENDER, BIRTH_DATE ,NATIONAL_ID , ADDRESS, TEL_HOME , TEL_OFFICE , MOBILE, FAX , EMAIL, SPECIALIZATION, ORGANIZATION , JOB , FACULTY , UNI ,SECTOR , RESEAQRCHCENTER )
values (i.UID ,i.AR_NAME , i.EN_NAME , i.GENDER, i.BIRTH_DATE ,i.NATIONAL_ID , i.ADDRESS, i.TEL_HOME , i.TEL_OFFICE , i.MOBILE, i.FAX , i.EMAIL, i.SPECIALIZATION, i.ORGANIZATION , i.JOB , i.FACULTY , i.UNI ,i.SECTOR , i.RESEAQRCHCENTER );
end loop;
end

رابط هذا التعليق
شارك

بالنسبة للـTrigger أنا عايز بعض المعلومات...
عملية التحديث على الجدول تتم عن طريق الفيو Asmaa ?
الفيو Asmaa في شرط محدد لعملية الـSelect ?
بدك أي تعديل أو إقحام يتم على الجدول Main ينعكس على الجدول Main1 ?

رابط هذا التعليق
شارك

السلام عليكم
اخي العزيز...
يعني انت عم بتجيب بيانات من خلال جملة SELECT صح ؟
ما وظيفة VALUES () ?????????????

create or replace procedure manoo is
cursor c_cursor is
select UID ,AR_NAME , EN_NAME , GENDER, BIRTH_DATE ,NATIONAL_ID , ADDRESS, TEL_HOME , TEL_OFFICE , MOBILE, FAX , EMAIL, SPECIALIZATION, ORGANIZATION , JOB , FACULTY , UNI ,SECTOR , RESEAQRCHCENTER 

begin
OPEN C_CURSOR; 
for i in c_cursor loop

fetch c_cursor into (UID ,AR_NAME , EN_NAME , GENDER, BIRTH_DATE ,NATIONAL_ID , ADDRESS, TEL_HOME , TEL_OFFICE , MOBILE, FAX , EMAIL, SPECIALIZATION, ORGANIZATION , JOB , FACULTY , UNI ,SECTOR , RESEAQRCHCENTER )
END LOOP;
CLOSE C_CURSOR;
END;

رابط هذا التعليق
شارك

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية