SQL>
SQL>
SQL> CREATE TABLE product (
2 product_name VARCHAR2(25) PRIMARY KEY,
3 product_price NUMBER(4,2),
4 quantity_on_hand NUMBER(5,0),
5 last_stock_date DATE
6 );
Table created.
SQL>
SQL>
SQL> INSERT INTO product VALUES ('Product 1', 99, 1, '15-JAN-03');
1 row created.
SQL> INSERT INTO product VALUES ('Product 2', 75, 1000, '15-JAN-02');
1 row created.
SQL> INSERT INTO product VALUES ('Product 3', 50, 100, '15-JAN-03');
1 row created.
SQL> INSERT INTO product VALUES ('Product 4', 25, 10000, null);
1 row created.
SQL> INSERT INTO product VALUES ('Product 5', 9.95,1234, '15-JAN-04');
1 row created.
SQL> INSERT INTO product VALUES ('Product 6', 45, 1, TO_DATE('December 31, 2008, 11:30 P.M.','Month dd, YYYY, HH:MI P.M.'));
1 row created.
SQL>
SQL>
SQL>
SQL> CREATE OR REPLACE FUNCTION tabcount (nm IN VARCHAR2)RETURN PLS_INTEGER
2 IS
3
4 retval PLS_INTEGER;
5
6 BEGIN
7
8 EXECUTE IMMEDIATE 'SELECT COUNT(*) FROM ' || nm INTO retval;
9
10 RETURN retval;
11 END;
12 /
Function created.
SQL>
SQL>
SQL> select tabcount('product') from dual;
TABCOUNT('PRODUCT')
-------------------
6
SQL>
SQL> drop table product;
Table dropped.