Oracle PL/SQL Programming, Fourth Edition by Steven Feuerstein, Bill Pribyl This errata page lists errors outstanding in the most recent printing. If you have technical questions or error reports, you can send them to booktech@oreilly.com. Please specify the printing date of your copy. This page was updated June 30, 2008. Here's a key to the markup: [page-number]: serious technical mistake {page-number}: minor technical mistake : important language/formatting problem (page-number): language change or minor formatting problem ?page-number?: reader question or request for clarification Confirmed errors: {436}: Figure 14-2 The code now reads: CREATE OR REPLACE PROCEDURE order_books ( isbn_in IN name_varray new_count_in IN number_varray) IS BEGIN FORALL indx IN isbn_in.FIRST .. isbn_in.LAST UPDATE books SET page_count = new_count_in (indx) WHERE isbn = isbn_in (index); END; it should be: CREATE OR REPLACE PROCEDURE order_books ( isbn_in IN name_varray , new_count_in IN number_varray) IS BEGIN FORALL indx IN isbn_in.FIRST .. isbn_in.LAST UPDATE books SET page_count = new_count_in (indx) WHERE isbn = isbn_in (indx); END; (439) Figure 14-3; "FOR ALL indx IN isbn_in.FIRST" should be replaced by "FOR indx IN isbn_in.FIRST" (887) Figure 23-2; "PL/SQL execution engine" should be "SQL execution engine" (In 3rd Edition this is on page 759.)