بتاريخ: 19 ديسمبر 200619 سنة comment_86635 السلام عليكم إخواني هذه function لتحويل التاريخ الميلادي الي هجري بالفورمات التي تريدها ملحوظة : اليوم الزائد هو لمعالجة مشكلة انحراف التاريخ الهجري ملحوظة كمان مرة : لا يمكن استدعاء هذه الfunction من جملة select لانها تحتوي علي جملة ddl CREATE OR REPLACE function to_DATE_ARABIC( p_date in date, p_fmt in varchar2 ) return varchar2 as l_return_string varchar2(255); v_cal varchar2(255):='arabic hijrah'; begin execute immediate 'alter session set nls_calendar = '''||V_cal||''''; l_return_string := to_char( p_date+1, p_fmt ); execute immediate 'alter session set nls_calendar = ''Gregorian'''; l_return_string:=replace(l_return_string,'الثانية','الثانى'); return l_return_string; end; / لا تنسونا من الدعاء بالتوفيق to_date_arabic.txt تم تعديل 29 يناير 200719 سنة بواسطة hanon_OCP تقديم بلاغ
بتاريخ: 22 ديسمبر 200619 سنة comment_87084 الف شكر الكبس يا ريت لو تشرحلي هالجملة execute immediate تقديم بلاغ
بتاريخ: 23 ديسمبر 200619 سنة كاتب الموضوع comment_87256 السلام عليكم الأخ الكريم execute immediate هي oracle supplied procedure or command لتنفيذ اوامر الddl أو الديناميك SQL بداخل pl/sql block فمعروف انه لا يمكن تنفيذ أوامر ddl بداخل اي function او pl/sql block و لكن هذه الprocedure تتييح لنا إمكانية عمل ذلك و أيضا تنفيذ الديناميك SQl و هي الجمل التي مثلا لا يعرف إسم الجدول او العمود الذي ستعمل عليه الا في الرن تايمو هذه الprocedure موجودة بدأ من الإصدار 8i بالتوفيق تقديم بلاغ
بتاريخ: 24 ديسمبر 200619 سنة comment_87598 السلام عليكم عند تشغيل هذة الفنكشن تعطى رسالة الخطأ PLS-00103: Encountered the symbol "IMMEDIATE" when expecting one of the following: := . ( @ % ;The symbol ":= was inserted before "IMMEDIATE" to continue. تقديم بلاغ
بتاريخ: 24 ديسمبر 200619 سنة كاتب الموضوع comment_87600 السلام عليكم الأخ محمد سعيد انت فقط عند نسخ الفانكشن من البراوزر فلت منك حرف غالبا هو ; تأكد عند النسخ انك تأخذ كل الفانكشن لقد حاولت إرفاق ملف بها و لكن هناك مشكلة في إرفاق الملفات و لا أستطيع إرفاقها و عموما فقد رفعت السكريبت الخاص بها في هذه اللنك من يرد تحميله فلحمله من هنا من هنـــــــــابالتوفيق تم تعديل 24 ديسمبر 200619 سنة بواسطة hanon_OCP تقديم بلاغ
بتاريخ: 24 ديسمبر 200619 سنة comment_87603 ملحوظه execute immediate تعمل علي الداتا بيز و ليس علي الفورمز يعني يجب انشائها علي الداتا بيز سلام تقديم بلاغ
بتاريخ: 25 ديسمبر 200619 سنة comment_87773 طيب لو عايز انفذ جملة dynamic sql فى ال run time مينفعش استخدمها ولا استخدم forms_ddl ارجو التوضيح وجزاكم الله خيرا تقديم بلاغ
بتاريخ: 21 يناير 200719 سنة comment_89852 السلام عليكمهذه الدالة رائعة و لكن اجد صعوبة فى فهم الدالة REPLACEارجو توضيح وظيفتهاجزاكم الله خيرا تقديم بلاغ
بتاريخ: 21 يناير 200719 سنة كاتب الموضوع comment_89867 السلام عليكم الأخ الكريم الfunction replace هي function تستخدم لاستبدال حروف او كلمات من string و وصفها كالتالي l_return_string:=replace(l_return_string,'a','b'); 1- هي تأخذ 3 بارمتر الاول و هو i_return_stringو هو النص الذي نريد الاستبدال فيه 2-و الثاني 'a'و هو النص الذي نريد استبداله 3-و الثالث و هو 'b'و هو النص الذي نريد ابداله مع 'a' حيث ستقوم الفانكشن باستبدال كل نسخ الحرف 'a' بحرف b و هذا المثال يوضح ذلك SQL> select replace('abcdefaadd','a','b') 2 from dual; REPLACE('A ---------- bbcdefbbdd بالتوفيق تقديم بلاغ
بتاريخ: 22 يناير 200719 سنة comment_89937 السلام عليكملم اقصد كيفية عمل تلك الدالة و لكن الهدف منها فى هذا الكود و لما لجئت اليها؟ تقديم بلاغ
بتاريخ: 23 يناير 200719 سنة كاتب الموضوع comment_89970 السلام عليكمهذه الدالة رائعة و لكن اجد صعوبة فى فهم الدالة REPLACEارجو توضيح وظيفتهاجزاكم الله خيرا السلام عليكم الأخ العزيز سؤالك لم يوضح تساؤلك عن غرض استخدام replace function بداخل الكود و انما فقط توضيح وظيفة الreplace function بشكل عام عموما فقد تم استخدام الfunction replace لتغيير كلمة الثانية التي تظهر في يعض الشهور الي كلمة الثاني كما في شهر جمادي الثاني حيث كان يظهر عندي بشكل جمادي الثانية و هو ليس الإسم الصحيح للشهر و ان كان الشهر يظهر عندك مظبوط فلا داعي لاستخدام الreplace بالتوفيق تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.