بتاريخ: 28 سبتمبر 200718 سنة comment_111396 عندما أقوم بتنفيذ هذا الكود :- DECLARE dd VARCHAR2 (10) := '&dd'; pp VARCHAR2 (10); BEGIN pp := CASE WHEN dd = 1 THEN 111 WHEN dd = 2 THEN 222 WHEN dd IN (3, 4, 5, 6, 7, 8, 9) THEN 333 ELSE '0123456789' END; DBMS_OUTPUT.put_line ('When dd= ' || dd || ' then the pp= ' || pp); END; / فأذا وضعت له 1 أحصل على 111و أذا 2 أحصل على 222و أذا 3 أو 4 لغاية 8 أحصل على 333و أذا أى رقم أخر غير السابق ذكرهم فمن المفترض أن أحصل على 0123456789و الحته الاخيره هى المشكلة لأن الصفر الذى فى اول الرقم ( اللى هو الرقم ده 0123456789 ) لا يظهر و أنا لا أعرف سبب حدوث ذلك !!!!!!فأرجو الأفادة تقديم بلاغ
بتاريخ: 28 سبتمبر 200718 سنة comment_111402 1 DECLARE 2 dd number := ⅆ 3 pp number; 4 BEGIN 5 pp := 6 CASE 7 WHEN dd = 1 8 THEN 111 9 WHEN dd = 2 10 THEN 222 11 WHEN dd IN (3, 4, 5, 6, 7, 8, 9) 12 THEN 333 13 ELSE 0123456789 14 END; 15 DBMS_OUTPUT.put_line ('When dd= ' || dd || ' then the pp= ' || to_char(pp,'0999999999')); 16* END; SQL> / Enter value for dd: 111 old 2: dd number := ⅆ new 2: dd number := 111; When dd= 111 then the pp= 0123456789 PL/SQL procedure successfully completed. تقديم بلاغ
بتاريخ: 29 سبتمبر 200718 سنة كاتب الموضوع comment_111497 تمام كده ..... هى فعلاً كانت مفروض تتعمل كده ...... تشكر يا مودى تقديم بلاغ
بتاريخ: 30 سبتمبر 200718 سنة comment_111632 بيتهيقلي يا بشمهندس هانى انت لو غيرت varchar2 الى number المشكله هتتحل تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.