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

كيفية استخدام الـ Count في الأوراكل ..

Featured Replies

بتاريخ:

اخواني السلام عليكم
سؤالي في الـكاونت Count

الكود التالي هو عمل count لرقم المنشأة من جدول المنشآت

PROCEDURE CHK_Worker (idx number)  IS
cnt number;
BEGIN cnt:=0;
  select count(idx) into cnt from MONSH
	
	where idx=:INFO.idc;
   
     if cnt >0 and :INFO.LIST212 =1 then
     next_item;
else
STOPMSG(29);
     end if;
     end;



هذا الكود صحيح
ولكن لو أردت أن أعمل count لقيمتين سوياً هل يمكن ذلك ..؟ وكيف يتم ذلك اذا كان الجواب نعم ..
أريده أن يعمل count لقيمتين , كيف يتم ذلك ..؟
وشكرا لكم ..

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

بتاريخ:

السلام عليكم
ياريت توضيح أكثر هل تريد وضع دالة ال count أكثر من مرة في الجملة ـ أم ماذا

موفق

بتاريخ:

ممكن اخي الكريم توضح بزيادة لكي نستطيع مساعدتك

اذا انا فهمت صح فانت تريد ان تعمل كما يلي :
تريد ان توجد قيمة كاونت (x,y) معا؟؟؟ هل هذا ما تقصده؟؟

ام كما سالك الاخ مصطفى ؟؟؟

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

وعليكم السلام
نعم أخي أريد أن توجد قيمة كاونت ( x,y ) وأن تكونان سويا وأن تتحققا سويا
مثال بسيط ::-
في جدول البيانات الأساسية قمت باستخدام دالة كاونت للتحقق من وجود رقم المنشأة في جدول المنشآت وأنه اذا كان موجود تظهر لي رسالة خطأ ..
الذي أريده استخدام دالة كاونت للربط بين رقم الهوية ورقم المنشأة واذا كانتا موجودتين سويا في نفس الريكورد ( Record ) في جدول المنشآت تظهر لي رسالة خطأ لكن في حالة وجودة رقم المنشأة مربوط مع رقم هوية آخر غير الذي أدخله المستخدم لا تظهر لي رسالة خطأ ,,
أي أنني لا أريد تكرار رقم المنشأة مع نفس رقم الهوية في الجدول وأن أسمح بتكراره مع أي رقم هوية آخر ..

العملية كلها كاستخدام مفتاحين أساسيين في الجدول ( 2 primary key's ) ولكنني لا أستخدم أي مفتاح أساسي في الجدول نظرا لأنني أستخدم تراكم للسجلات عند التعديل ..
وشكرا لكم

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

بتاريخ:

السلام عليكم
يامكانك اخي الاستغناء عن دالة COUNT وعمل فالديشن على الايتم...
ببساطه اعمل CURSOR لاحضار ارقام المنشآت...
ومن ثم قم بعمل LOOP يشييك على كل رقم منشأة مع رقم الهوية المدخل على الايتم..
اذا وجد رقم منشأة + رقم الهوية المدخل على الايتم سابقا ... يعطيك رسالة خطأ...
بالتوفيق

تم تعديل بواسطة PALI.ORACLE

بتاريخ:
  • كاتب الموضوع
السلام عليكم
يامكانك اخي الاستغناء عن دالة COUNT وعمل فالديشن على الايتم...
ببساطه اعمل CURSOR لاحضار ارقام المنشآت...
ومن ثم قم بعمل LOOP يشييك على كل رقم منشأة مع رقم الهوية المدخل على الايتم..
اذا وجد رقم منشأة + رقم الهوية المدخل على الايتم سابقا ... يعطيك رسالة خطأ...
بالتوفيق


جربت أخي ولكن لم تعمل معي
يحتمل أن يكون خطأ ما
ممكن مثال بسيط اخي بال على ذلك ..؟
بتاريخ:

السلام عليكم

يمكنك استخدام هكذا

declare 
x number(12);
begin select count(*) into x from table_name where idx=:INFO.idc and hoya_no=:hoyan_no;

if x>0 then
----
end if;
end;



اربط الشرطين في جملة ال where
موفق

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

يمكنك استخدام هكذا

declare 
x number(12);
begin select count(*) into x from table_name where idx=:INFO.idc and hoya_no=:hoyan_no;

if x>0 then
----
end if;
end;



اربط الشرطين في جملة ال where
موفق



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

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

بتاريخ:

السلام عليكم
جرب هذه الطريقة:

Declare
Cursor C Is
Select Id_No, Cmp_No
  From Companies
 Where Id_No  = :Blk_1.Id_No 
And Cmp_No = :Blk_1.Cmp_No;
Begin
 For Rec In C Loop
If Rec.Id_No = :Blk_1.Id_No And Rec.Cmp_No = :Blk_1.Cmp_No Then
  Message('Found Before');
  Message('');
  Raise Form_Trigger_Failure;
End If;
 End Loop;
End;

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

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

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

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

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

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.