الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

أريد مساعدة لهذة المشكلةfrm-40508:

Featured Replies

بتاريخ:

السلام عليكم

ياشباب اريد مساعدة لحل هده المشكلة


frm-40508: oracle error:unable to insert recordحيث تظهر لي رسالة

عندما اقوم بالحفظ بعد عملية البحث اريد مساعدة عاجلة

مرفق لكم الفورم
 

بتاريخ:

احد الحقول المستخدم داخل هذه البلوك هو primary key لذلك عندما تقوم بعملية الحفظ بعد عملية البحث  تظهر هذه الرسالة لتشير حدوث خطأ 

معتبرة بذلك أنه يراد اضافة حقل اخر يحتوي على نفس البيانات الموجودة اصلا فيرفض الحفظ ..لانه يعتبرها مدخلة سابقاً

بتاريخ:
  • كاتب الموضوع

نعم كلام صحيح واعرف انهو لايحقظ طالما كان مفتاح اساسي..

 

ولكني اريد ان احفظ بهده الطريقة هل ممكن

بتاريخ:

استرجاع البيانات أثناء البحث ..كيف يتم?? عن طريق cursor ...... أم حضرتك تستخدم execute_query

بتاريخ:
  • كاتب الموضوع

cursor مرفق الفورم لك


Declare
  Cursor C Is
  Select Empno, Ename, Job, Mgr, Hiredate, Sal, Comm
    From Emp
   Where Deptno=:dept.Deptno;
 X Boolean;
 Y C%Rowtype;

Begin
  X := Show_Lov('LOV6');
   Open C;
    Go_Block('emp');
    First_Record;
    Loop
     Synchronize;
   Fetch C Into Y;
    Exit When C%Notfound;
     :emp.Empno     := Y.Empno;
     :emp.Ename     := Y.Ename;
     :emp.Job       := Y.Job;
     :emp.Mgr       := Y.Mgr;
     :emp.Hiredate  := Y.Hiredate;
     :emp.Sal       := Y.Sal;
     :emp.Comm      := Y.Comm;
     Next_Record;    
  End Loop;
 Close C;
   Delete_Record;
   First_Record;
   :System.Message_Level :=25;
End;

تم تعديل بواسطة ميسم الكرام

بتاريخ:

لهذا أنا سألت حضرتك ..عن طريقة الاسترجاع للبيانات

لايمكن إجراء عملية الحفظ بعد التعديل لبيانات تم استرجاعها عن طريق استخدام ال cursor ..لا يمكن ..

لان النافذة لم يتم تهيأتها على اساس التبديل والتغير والتحديث على البيانات ...بل تم استرجاع البيانات لغرض المشاهدة فقط

لذلك عندما تعدل وتريد الحفظ فوراً يظهر الخطأ بأنه لايمكن الحفظ لانه لدينا primary key  وهذا من حسن الحظ انه نبهنا ..

حسنأ ..سوف تقول اقوم برفع الprimary Key ... النتيجة سوف يقوم بعملية الحفظ.....ولكن هنالك خطأ بالحفظ فهو حفظ البيانات التي تم تعديلها على اساس أنه قيد جديد ..

وتم الابقاء على القيد القديم الموجود اصلا ..

وبهذا سوف تتضخم عندي قاعدة البيانات وتكرار يحدث لدي بالبيانات ..

لذلك يتجنب استرجاع البيانات بطريقة الcursor في حال كان الغرض من استرجاعها هو التعديل عليها ثم الحفظ ....شكراً

بتاريخ:
  • كاتب الموضوع

اختي ميسم

 

طيب كيف استرجع البيانات من جدولين الى بلوكين بدون استخدم cursor

 

هل يوجد معك حل

 

شكرا لكي

بتاريخ:

استخدم execute_query ...ويجب أن بكونا هذان الجدولين master , detials

بتاريخ:

اخي العزيز جميع مشاكل سوف تحل بعد طلاعك على هذا الموضوع

 

http://www.araboug.org/ib/index.php?showtopic=54471

 

هو عباره عن مشروع وعندي ماستر و ديتيل

وقمت بالربط بينهم و استعراض المعلومات بطريقه مثاليه ونفس ما تريد و وفق احتياجك

سوف يساعدك كثير

وطريقه بسيطه و بعيدا عن تعقيدات الكورزر

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

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

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

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

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

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.