بتاريخ: 2 فبراير 201016 سنة comment_184011 اخواني في الله جمله بسيطه تعودت عليها في باقي لغات البرمجه مثلcase statmentاعجز عنها في لغه اوراكل افتح الهيلب يكلي switch variablecase (a):case(:end;اجربها لا تعمل عندي فتحت كتاب اس كيو ال يكليcase variable when (1) then statment;when (2) then statment;end caseولا تعمل عندي علما اني استعمل ديفلوبر 6 ما الحل والجمله الصجيحه والا كرهت الاوراكل واعتبرته عاجز على الرغم من شهرته العالميه تقديم بلاغ
بتاريخ: 2 فبراير 201016 سنة comment_184017 بس هتكرهى الاوراكل عشان كدااااااااااااااا ..... بصى حضرتك هى لغة c++ وماشبه كان فيها switch case وكانت ع الصيغة التالية Switch(expr){ Case exp_a : statement_a Case exp_b : statement_b : : Default } ف الاوراكل مفيش switch دى بأأه اسمها case بس وهيا بتعمل عمل if then else وصيغة case expression Case expr when expr1 then returnexpr1when expr2 then returnexpr2……………………….…………………………….Else anotherexprrrEnd كان ف مثال لذيذ ف السيكول ال كان بيشتغل ع الوظيفة وع اساسها بيزود المرتب بتاع الموظف اعتقد select first_name,job_id, case job_id when 'ST_CLERK' then 2*salary when 'IT_PROG' then 2.5*salary else salary end "new salary" from employees ال job_id دا ال expr ال selector يعنى ال هتشتغلى عليه فرضا لو هتستخدميها ف كود pl set serveroutput on declare x number; begin select case job_id when 'ST_CLERK' then 2*salary when 'IT_PROG' then 2.5*salary else salary end into x from employees where employee_id=&empid; dbms_output.put_line('new salary' || x); end; اسفة ع التقصير تم تعديل 2 فبراير 201016 سنة بواسطة @nana@ تقديم بلاغ
بتاريخ: 3 فبراير 201016 سنة كاتب الموضوع comment_184048 بس ممكن تشرحلي بوضوح خطوه خطوه ليش دخلت caseفي وسط جمله ال selectاني عملت case x when 1 then message(1);when 2 then message (2);end; ولم تعمل عندي يعترض على ال case تقديم بلاغ
بتاريخ: 3 فبراير 201016 سنة كاتب الموضوع comment_184058 جربت الكود الي انت كاتبه وايضا كان يعترض كلماا شاف caseانا بديت اكره اوراكل اكثر فاكثر تقديم بلاغ
بتاريخ: 4 فبراير 201016 سنة comment_184203 بس ممكن تشرحلي بوضوح خطوه خطوه ليش دخلت caseفي وسط جمله ال selectاني عملت case x when 1 then message(1);when 2 then message (2);end; ولم تعمل عندي يعترض على ال case انا دخلتها ف جملة سيلكت لان انا اصلا بشتغل ع الكولم من جدول employees وبعدين ماينفعش تقولى case لوحدها كدااا فرضا لو مش عايزاها ف جدول سيكلت دا مثال تانى set serveroutput on declare grade char(1):=upper('&grade') ; result varchar2(10); begin result:=case grade when 'A' then 'EXCELLENT' when 'B' then 'VERY GOOD' when 'C' then 'GOOD' else 'fair' end; dbms_output.put_line('Result is ' || result); end; بس ياريت تقولى ايه الخطأ ال بيظهر ليكى تقديم بلاغ
بتاريخ: 5 فبراير 201016 سنة كاتب الموضوع comment_184223 اختي نانا اشكرك كثير كثير على طوله بالك معاي و صبرك على فهمي البطيءاول شي انا بجرب امثلتك على ديفلوبر 6ثاني شيء هو الكود الي كتبتيه جربته وطلعتلي رساله الخطأ هذيencountered the symbol 'case' when expecting one of the following(-+mod not null <an identifier><a double -quated delimiited -identifier><abind variable>avg count current exist max min prior sqlstddev sum variance cast الخ تعبت من الكتابه بس اعتقد انك عرفتي المشكله من هذا errorممكن ولو فيه ازعاج تبعثي لي الحل الله عليك تقديم بلاغ
بتاريخ: 5 فبراير 201016 سنة comment_184237 سورى بجد انا مااشتغلتش قبل كداا ع 6 بشتغل ع 10g مش عارفة بجد بس اعتقد ال 6 مش support ال case اتمنى حد يرد عليكى يكون اشتغل ع 6 وممكن تستخدمى decode بدلا منها بس عشان خطرى بلاش تكرهى الاوراكل تقديم بلاغ
بتاريخ: 6 فبراير 201016 سنة كاتب الموضوع comment_184250 مشكوره حبيبتي نانا اعتقد انه لايدعمcase لانه كلما اكتبها يعترضبس في الهيلب بتاعه كان اكو شرح لها بس اكتب لايعمل وكان فيه switch caseالمهم خسرنا اول شي case statmentمن اختارينا الاوراكل وكمان خسرنا ال debug والله اعلم حنخسر ايه الايام الجايه تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.