The p.l procedure is a pleasure to use. When you call p.l instead of the DBMS_OUTPUT.PUT_LINE procedure, you will never have to worry about raising the VALUE_ERROR exception. You can display values of up to 32,767 bytes! You can pass many different kinds of data to the l procedure and it will figure out what to do and how to best display the information.
What, you worry? No, you let the package do the worrying for you. You get to concentrate on building your application.
You use p.l just as you would its builtin cousin, except that the p package offers a much wider overloading for different types and combinations of types of data. You pass it one or more values for display purposes. You can also use the final argument of the p.l procedure to control when output should be displayed (see Section 7.4).
Here are the headers for the version of p.l that display a number and a string-date combination, respectively.
PROCEDURE l (number_in IN NUMBER, show_in IN BOOLEAN := FALSE); PROCEDURE l (char_in IN VARCHAR2, date_in IN DATE, mask_in IN VARCHAR2 := PLV.datemask, show_in IN BOOLEAN := FALSE);
To view the salary of an employee, you simply execute:
To view the employee name and hire date, you execute:
p.l (emp_rec.ename, emp_rec.hiredate)
and you will see this data in this format:
JONES: May 12, 1981 22:45:47
To get the same information using the default functionality of DBMS_OUTPUT, you would have to enter something as ugly and time-consuming ...