الانتقال إلى المحتوى
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.

لماذا يتأخر تنفيذ هذا الكود؟

Featured Replies

بتاريخ:

اصدقائى فعلا الاوراكل تشيب ... ممكن حد يقول لى لماذا يتأخر تنفيذ هذا الكود و ياخد مدة حوالى 10 دقايق عشان يشتغل ليه ده كله

delete from employees



OR



delete from employees where last_name='Higgins';




طيب ده كود عادى المفروض ان فى علاقة تربط الجدول بنفسه المفروض يظهر رسالة خطأ تفيد بأنه لا يمكن حذف Master record له ابناء في نفس الجدول

و بالتالى الكود التالى هو ايضا يتأخر و في النهاية لا يعطى النتيجة المطلوبة

SET SERVEROUTPUT ON
declare
invalid_id exception;
pragma exception_init(invalid_id,-02292);
begin
delete from employees;
exception
when invalid_id then
DBMS_OUTPUT.PUT_LINE('There are some employees in');
end;



انا عارف انى تاعبكم معايا بالاكواد البايظة دى بس انا مش مبتدئ و الحاجات دى انا عملتها قبل كده... غشان كده الاوراكل مجننانى شوية

بتاريخ:

بالنسبة للكود الاول ممكن تستخدم truncate table فهي اسرع ،،
اما الكود الثاني، هل هناك index على هذا العمود؟ اذا لم يكون موجود فيجب عليك انشائها والا سيقوم بعمل Full-Table Scan

بتاريخ:

السلام عليكم
للمشاركة فقط وتوضيح لفكرة الأخ أبو صلاح
فإن عبارة delete تقوم بحذف جميع مافي الجدول-أو مايوافق الشرط- مع الحفاظ على المساحة المحجوزة
للجدول
أما بالنسبة لعبارةtruncate فانها تحذف المحتويات مع المساحة المحجوزة
وارجو التصحيح ان أخطأت
ولكم الشكر

بتاريخ:

اشكرك اخي amsh ،،

نسيت ان اضيف تنبيه ، انه لاتستطيع ان تستخدم rollback مع truncate.

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

انت كده ما حليتش المشكلة ... انا عاوز استخدم delete مش المشكلة في حذف بيانات و خلاص .. لا يا اصدقائى . انا عاوز استخدم الـــ Exception و ده الغرض من الكود مش الفكرة ...

و على فكرة الكود اشتغل خلاص بس مش عارف ايه السبب؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

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

بتاريخ:

ممكن السبب كان هناك LOCK على أحد سطور الجدول ناتج عن UPDATE مثلا.

بتاريخ:

ممكن تستخدم الكود ده لتسريع الجدول اللي فية المشكلة

ANALYZE TABLE EMPLYEE COMPUTE STATISTICS;

جرية على ال SQL PLUS و أرجو من الله أن يساعد هذا في حل المشكلة
بتاريخ:
  • كاتب الموضوع

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

بتاريخ:

المشكلة ممكن أن تكون في السرفر المتواجد عليه ال database
لو هي مشكلة بطئ عام ممكن تروح لل enterprise manager و تدخل على ال configuration من instance ثم تدخل على memory بس لازم تكون داخل ب sys user
ثم تقوم بتزويد حجم ال shared pool و ال data buffer cash

لو المشكلة بطئ في الجدول دة بس يبقى تروح تتأكد من أن علية index و تشوف حجم البيانات اللي عليه

ثم تستخدم الكود ده

ANALYZE TABLE EMPLYEE COMPUTE STATISTICS

;

  • بعد 2 أسابيع...
بتاريخ:

السلام عليكم ورحمة الله وبركاتة

اخي اردت ان اشارك واقول شئ

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

ولكن ما السبب

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

اذا وجدنا مشكلة فما العمل ؟

يفضل عمل فهارس علي الجداول التاريخية historical table اي الجداول التي تحتوي علي بيانات التاريخة
مثل اسماء الموظفين وغيرها من الصفات الثابتة

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

اما بالنسبة لامر truncate فاحذروا يااخوه ان هذا الامر DDL
اي يتم الكتابة علي Data files مباشرتا وما معني ذلك ؟
معناه انك لان تستطيع الرجوع في الامر عن طريق rollback


وهذا علي حسب علمي والله اعلي واعلم
ان كان توفقيق من الله وان كان خطا فمني والشيطان
سبحان الله وبحمده سبحان الله العظيم

والسلام عليكم ورحمة الله وبركاتة

  • بعد 2 أسابيع...
بتاريخ:

السلام عليكم
للمشاركة فقط وتوضيح لفكرة الأخ أبو صلاح
فإن عبارة delete تقوم بحذف جميع مافي الجدول-أو مايوافق الشرط- مع الحفاظ على المساحة المحجوزة
للجدول
أما بالنسبة لعبارةtruncate فانها تحذف المحتويات مع المساحة المحجوزة
وارجو التصحيح ان أخطأت
ولكم الشكر


اخى كلامك ليس صحيح بالمره فعبارة delete وعبارة truncate الاثنان يقومان بحزف جميع ما فى الجدول او الحزف حسب الشرط مع بقاء تكوين الجدول كما هو اى يفرغان الجدول من البيانات فقط والفرق بينهما ان عبارة truncate لا يمكن عمل rollback لها اى انها تحذف حذف نهائى عكس عبارة delecte التى يمكن التراجع فيها

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

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

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

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

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

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.