بتاريخ: 28 مايو 201412 سنة comment_251201 هذا الكو وهو الدخول الي النظام declare x varchar2(30); y varchar2(30); paw varchar2(20); g number; d number; AC VARCHAR2(5):='acc'; begin if :un is null or :pw is null then g:=show_alert('alert1'); go_item('un'); raise form_trigger_failure; end if; select count(user_name) into x from users where user_name=:un ; select passwod into paw from users where user_name=:un ; if x>=1 and paw=:pw then select u_no into d from users where u_name=:un; call_form('J:\Extera\oracle project\main project.fmx',hide,do_replace); elsif x>=1 and paw!=:pw then set_alert_property('alert1',alert_message_text,'Error Password'); g:=show_alert('alert1'); else set_alert_property('alert1',alert_message_text,'error ,error '); g:=show_alert('alert1'); end if; end; الخطاء عند كل جملة select اسم الخطا the characters is mismatch جدول المستخدمين هو create table users( id_no number(20), user_name nvarchar2(30), password nvarchar2(30), constraint pk_id_no primary key(id_no)); تم تعديل 28 مايو 201412 سنة بواسطة ميسم الكرام تقديم بلاغ
بتاريخ: 28 مايو 201412 سنة comment_251210 اخى الفاضل لي ملاحظتين قبل البحث فى المشكلة1- اعمل على تسمية اسماء المتغيرات باسماء مفهومة مثلا v_user_count بدلا من x,y,g,d2- عندما تستعمل جملة السيليكت لتسترجع بيانات فى متغير ما ، يفضل ان تستعمل exception when no_data_Foundبذلك تتجنب كثيرا من المشاكل فى حالة عدم الرجوع ببيانات من قاعدة البيانات تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.