الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

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

مغلق
بدأه alloom في 15 ديسمبر 2003 · 8 رد · 723 مشاهدة · في قواعد بيانات Oracle
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع
declare
    x char(9);

    y char(9);
    z char(9);
    w char(9);
begin
    x:=:T1;
    y:=:T2;
     
  select instructor.no,instructor.password
   into z,w

 from instructor;

   if z=x and w=y then call_form('instructor_program');
   
   message('invalid');
end if;

/*exception
when others then message('invalid password & user no');*/
end;

تم تعديل هذه المشاركة بواسطة حسين عبدالله أحمد حسن في 16 ديسمبر 2003 في 01:24

احنا والاوراكل والزمن طويل وراها وراها

هلا ال OCP واللي عنده عن ال OCM ما يبخل علينا

#2

من الواضح ان هذا كود سيكيورتي

و ستوقم بوضعه علي زر الاستدعاء

لم افهم ما هيا المشكله الي تواجهك

هناك تعديل ف استخدم VARCHAR2 بدلا من CHAR

لو واجهت اي مشكله اكتبها بالتفصيل تمنياتي بالتوفيق

ليس هناك

قلب ناصع البياض

ولا قلب قاتم السواد

ولكن دائما

black&white

#3

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

المشكلة انة عند تنفيذ اللمر دائما ينفذ الexception

احنا والاوراكل والزمن طويل وراها وراها

هلا ال OCP واللي عنده عن ال OCM ما يبخل علينا

#4

هل قمت بتحويل نوع المتغيرات كلها الي VARCHAR2

اعتقد ان هذه هي مشكلتك

و لاتنسي ان تجعل حقولك في الداتا بيز بنفس النوع VARCHAR2

المشكله حسب ما تظهر انك تستخدم متغير حرفي ثابت CHAR فحتي لو البيانات المدخله اقل من 9 حروف سيقوم هوا بتكملتها لتكون 9

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

تمنياتي بالتوفيق

تم تعديل هذه المشاركة بواسطة black&white في 15 ديسمبر 2003 في 17:39

ليس هناك

قلب ناصع البياض

ولا قلب قاتم السواد

ولكن دائما

black&white

#5

عزيزي راجع الكود جيدا ...

كل ما في الامر انك لم تظع else بعد كول فورم ...

مايحدث عندك حاليا هو انه يستدعي الفورم ومن ثم يظهر لك مسج انفايلد ...

عسى ان الصورة وضحت لك احين ..

#6

انا اعتقد ان المشكلة في جملة ال SELECT

لا يوجد فيها WHERE

وبالتالي يتحقق EXCEPTION اسمه

TOO_MANY_ROWS

اي ان جملة SELECT ترجع اكثر من قيمة

ولا نستطيع وضع اكثر من قيمة في متغير واحد (Z او W)

#7

كلام صح ...

بس المفترض ان البرنامج لايقبل تو يوز بنفس الاسم ...

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

وبالفعل يحتاج هو ان ستخدم WHERE لضبط المستخدم وبعدها لاتنسي امر ELSE

لكن هل لاحظتم انه معطل الاكسبشن ........؟؟؟؟؟؟ يعني الاكسبشن مابيعطيه ايى

مسج ...

المسج يجيه من المسج الا مخلنه ....

#8
select instructor.no,instructor.password   into z,w  from instructor;

نلاحظ هنا ان الSELECT ترجع جميع الUSERS في الجدول instructor

وهنا المشكلة

---------------------------------------------------------------

يقول alloom

المشكلة انة عند تنفيذ اللمر دائما ينفذ الexception

----------------------------------------------------------------

#9

to all of the people who help me i thank them very much

احنا والاوراكل والزمن طويل وراها وراها

هلا ال OCP واللي عنده عن ال OCM ما يبخل علينا

هذا الموضوع مغلق.

مواضيع مشابهة