
عايز اعمل دوراة تكراية (loops) تطبع كلمة Hello بالطول
تمت كتابته بواسطة
The Black Tiger
, October 29 2010 11:49 AM
8 رد (ردود) على هذا الموضوع
#2
تاريخ المشاركة 30 October 2010 - 09:45 AM
اتفضل يا اخ The Black Tiger وحدد النص الي تريد يعني مش hello وبس
set serveroutput on create or replace procedure my_new_text(text_received varchar2) is type text_array_type is table of varchar2(1000) index by binary_integer; text_array text_array_type; text_length varchar2(1000); begin select length(text_received) into text_length from dual; for i in 1..text_length loop text_array(i):=substr(text_received, i, 1)||utl_tcp.crlf; dbms_output.put_line(text_array(i)); end loop; end; / Procedure created. SQL> execute my_new_text('Mohammed'); M o h a m m e d PL/SQL procedure successfully completed. SQL>
تم التعديل بواسطة colla, 30 October 2010 - 09:57 AM.
على المرء ان يسعى وليس عليه ادراك النجاح
#7
تاريخ المشاركة 01 November 2010 - 11:48 AM
تستطيع أيضا استخدام جملة select لهذا الغرض
SELECT substr('Hellow Word',level,1) FROM dual CONNECT BY LEVEL <= length('Hellow Word')
حل ممتااااااااااااااااااااز بس يا ريت لو توضح كيف استخدمت عمليات الاستعلام الهرمي مثل CONNECT BY LEVEL وكيف استخدمت level داخل substr
على المرء ان يسعى وليس عليه ادراك النجاح