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

  • تسجيل الدخول عبر الفيس بوك تسجيل الدخول عبر تويتر Log In with LinkedIn Log In with Google      تسجيل دخول    
  • إنشاء حساب

صورة
- - - - -

فنكشن يعطيك عدد السجلات في جميع الجداول الموجودة في الاسكيما


4 رد (ردود) على هذا الموضوع

#1 yasiraq

yasiraq

    مشترك

  • الأعضــاء
  • 68 مشاركة

تاريخ المشاركة 05 May 2009 - 10:04 AM

السلام عليكم اخواني
اريد شرح لهذا الفنكشن

CREATE OR REPLACE FUNCTION SCOTT.get_count_all
RETURN NUMBER
IS
CURSOR c1
IS
SELECT table_name
FROM user_tables; v_sql LONG;
v_count NUMBER := 0;
v_count_all NUMBER := 0;
BEGIN FOR rec IN c1
LOOP
v_sql := 'SELECT COUNT(1) FROM ' || rec.table_name;
EXECUTE IMMEDIATE v_sql
INTO v_count; v_count_all := v_count_all + v_count;
END LOOP;
RETURN v_count_all;
EXCEPTION
WHEN OTHERS
THEN
RETURN -1;
END;
/

و جزاكم الله الف خير

#2 Transporter

Transporter

    عضو

  • الأعضــاء
  • 40 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 05 May 2009 - 10:26 AM

السلام عليكم

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

تحياتي

#3 mustafagamiel

mustafagamiel

    مشرف قسم النماذج والمشاريع

  • فريق الإشراف
  • 2,095 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 05 May 2009 - 10:48 AM

السلام عليكم ورحمة الله وبركاته
فعلا كلام أخي الكريم transporter صحيح
في تقوم بالاتي بالدخول على جدول user_tables الخاصة بسكيمة scott وتأتي بعدد كل الصفوف في كل جدول ويتم جمع مجموعهم جميعا في مخرجات الفانكشن ولو تريد أن ترى نتيجتها
select get_count_all from dual;

اللهم إن كان رزقي في الســــــــــماء فأنزله
وإن كان في الأرض فأخرجـه
وإن كان بعيدا فقربه وإن كان قريبا فيسره
وإن كان قليلا فكثره وإن كان كثيرا فبارك لي فيه

اللـــهم آمين
لا إله إلا الله وحده لاشريك له- له الملك وله الحمد وهو على كل شيء قدير
لا إله إلا أنت سبحانك-- إني كنت من الظالمين






#4 محمد جمعه

محمد جمعه

    مشترك

  • الأعضــاء
  • 146 مشاركة

تاريخ المشاركة 05 January 2010 - 02:49 AM

السلام عليكم ورحمة الله وبركاته
مطلوب فنكشن يعطيك عدد السجلات في جميع الجداول الموجودة في الاسكيما كل جدول على حدة
وشكرا جزيلاً
mmgpgco@hotmail.com

#5 محمد جمعه

محمد جمعه

    مشترك

  • الأعضــاء
  • 146 مشاركة

تاريخ المشاركة 05 January 2010 - 12:01 PM

السلام عليكم ورحمة الله وبركاته
أخي الكريم mustafagamiel
بأجرب الفانكشن ولكن بتعطيني -1 ومش عارف ليه
أعمل أيه علشان اعرض رقم الخطا وليه
شكرا لك وجعله الله في ميزان حسناتك
mmgpgco@hotmail.com