سالم ناصر بتاريخ: 3 مايو 2008 تقديم بلاغ مشاركة بتاريخ: 3 مايو 2008 6 أخطاء خفيه يقع فيها اغلب مبرمجي أوراكل 1 - القيمة (null) [center] [يسار] SQL> set serveroutput on SQL> declare 2 var1 varchar2(1); 3 begin 4 var1 := null; 5 if var1 != 'Z' then 6 dbms_output.put_line ('var1 != ''Z'', expected'); 7 else 8 dbms_output.put_line ('var1 = ''Z'', not expected'); 9 end if; 10 end; 11 . SQL> / var1 = 'Z', not expected PL/SQL procedure successfully completed. SQL> [/center] [/يسار] اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
سالم ناصر بتاريخ: 3 مايو 2008 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 3 مايو 2008 امثلة اخرى لنفس المشكلة : SQL> set serveroutput on SQL> declare 2 var1 varchar2(1); 3 var2 varchar2(1); 4 begin 5 var1 := null; 6 var2 := null; 7 if var1 = var2 then 8 dbms_output.put_line ('var1 = var2, expected'); 9 else 10 dbms_output.put_line ('var1 != var2, not expected'); 11 end if; 12 end; 13 . SQL> / var1 != var2, not expected PL/SQL procedure successfully completed. SQL> مثال اخر SQL> set serveroutput on SQL> declare 2 var1 varchar2(6) := ' '; 3 begin 4 var1 := rtrim (var1); -- makes var1 null 5 if var1 = '' then 6 dbms_output.put_line ('var1 = '''', expected'); 7 else 8 dbms_output.put_line ('var1 != '''', not expected'); 9 end if; 10 end; 11 . SQL> / var1 != '', not expected PL/SQL procedure successfully completed. SQL> اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
khaledmega بتاريخ: 4 مايو 2008 تقديم بلاغ مشاركة بتاريخ: 4 مايو 2008 مجهود متميز ؛ بارك الله فيكوشكراميجا اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sameh bakkar بتاريخ: 4 مايو 2008 تقديم بلاغ مشاركة بتاريخ: 4 مايو 2008 شكرا يا اخى على هذا الموضوع و لكن فى الواقع لا يجوز وضع علامه = قبل null لأنها ليست قيمه و المعروف انه بعد المعامل = تأنى قيمه ... ولكن هناك بعض الحالات نستخدم فيها = مع null وذلك مثلا فى الشاشات كما يلى : IF :BLOCK NAME.TEXT_ITEM=NULL THEN.................................. احيانا استخدمها فى الشاشات و تعمل معى بدون اى مشاكل و لكن لا يجوز فى كود PL منفرد .... و الله ولى التوفيق و جزاك الله كل خير.. اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.