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

ما الخطأ فى هذا الكود


x_oracle_x

Recommended Posts

قمت بعمل استعلام على جدول بحيث يعرض المنتجات التى تم بيعها فى نفس التاريخ وكان صحيحا ولكن وجد
خطأ وهو انه اذا كان هناك منتجين او اكثر تم بيعهم فى نفس التاريخ فان الاستعلام لا يعمل ولكن يعمل عندما يكون
منتج واحد فقط تام بيعه فى التاريخ المذكورز
والاستعلام كالآتى
begin
select all p_id, product, no, price, s_n, p_date
into :product.p_id, :product.product, :product.no, :product.price, :product.s_n, :product.p_date
from product
where product.p_date = :Dd;
end;
فما حل هذه المشكلة
شكرا

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

السلام عليكم
طبيعي انه لا يعمل عند وجود منتج تم بيعه في نفس اليوم حيث سيظهر اكسبشن too_many_rows
لان جملة السيليكت يتم اختيارها في فورمز فاريبلز
و الحل ان تضع شروط اخري لضمان ان ينتج ريكورد و احد فقط عن الاستعلام
اما اذا كنت تريد مثلا ان تعرض المنتجات التي تم بيعها في هذا اليوم للاستفسار مثلا
فيمكن استخدام بلوك من نوع from clause
لعرض المنتجات التي تم بيعها في يوم معين
بالتوفيق

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

السلام عليكم ورحمة الله
قد يفيدك استخدام أمر الdistinct لعدم تكرار البيانات المتشابهه لنفس الحقل

SQL> select distinct job from emp; JOB
---------
ANALYST
CLERK
MANAGER
PRESIDENT
SALESMAN

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

you can use cursor as follow:
[declare
cursor items is
select p_id, product, no, price, s_n, p_date
from product
where product.p_date = :my_date;
begin
open items;
fetch items
into :product.p_id, :product.product, :product.no, :product.price, :product.s_n, :product.p_date ;
if items%notfound then
message('There is no items in that date ' || to_char(:my_date));
end if;
close items;
end;
]
this will bring the first record even if there is many records in the select statement

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

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

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

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

×   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.

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

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

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