Categories:
.NET (961)
C (387)
C++ (185)
CSS (84)
DBA (8)
General (31)
HTML (48)
Java (641)
JavaScript (220)
JSP (109)
JUnit (31)
MySQL (297)
Networking (10)
Oracle (562)
Perl (48)
Perl (9)
PHP (259)
PL/SQL (140)
RSS (51)
Software QA (28)
SQL Server (5)
Struts (20)
Unix (2)
Windows (3)
XHTML (199)
XML (59)
Other Resources:
Can Sub Procedure/Function Be Called Recursively
Can Sub Procedure/Function Be Called Recursively? - Oracle DBA FAQ - Creating Your Own PL/SQL Procedures and Functions
✍: FYIcenter.com
PL/SQL allows sub procedures or functions to be called recursively. The tutorial example below shows you how to calculate factorial values with a recursive sub function:
SQL> CREATE OR REPLACE PROCEDURE FACTORIAL_TEST AS 2 FUNCTION FACTORIAL(N NUMBER) 3 RETURN NUMBER AS 4 BEGIN 5 IF N <= 1 THEN 6 RETURN 1; 7 ELSE 8 RETURN N*FACTORIAL(N-1); 9 END IF; 10 END; 11 BEGIN 12 DBMS_OUTPUT.PUT_LINE('3! = ' || 13 TO_CHAR(FACTORIAL(3))); 14 DBMS_OUTPUT.PUT_LINE('10! = ' || 15 TO_CHAR(FACTORIAL(10))); 16 DBMS_OUTPUT.PUT_LINE('64! = ' || 17 TO_CHAR(FACTORIAL(64))); 18 END; 19 / SQL> EXECUTE FACTORIAL_TEST; 3! = 6 10! = 3628800 64! = 126886932185884164103433389335161480802000000000000...
There must be something wrong with the FACTORIAL() definition that causes those many extra '0's in the '64!' result.
2007-04-25, 6158👍, 0💬
Popular Posts:
What Is Paint Shop Pro? - PSP Tutorials - Fading Images to Background Colors with PSP Paint Shop Pro...
Describe in detail Basic of SAO architecture of Remoting? For these types of questions interviewer e...
How To Analyze Tables with "mysqlcheck"? - MySQL FAQs - Administrator Tools for Managing MySQL Serve...
How To Merge Cells in a Row? - XHTML 1.0 Tutorials - Understanding Tables and Table Cells If you wan...
How many bits are used to represent Unicode, ASCII, UTF-16, and UTF-8 characters? Unicode requires 1...