MacLochlainns Weblog

Michael McLaughlin's Technical Blog

Site Admin

Oracle 12c PL/SQL Published

with 4 comments

Oracle Database 12c PL./SQL ProgrammingAfter writing nine books, it’s always great when the author copies arrive. That’s when I know the process is complete. Friday, my twelve copies of the Oracle Database 12c PL/SQL Programming book arrived in two boxes of six each. The book is also available online at

The book qualifies all the Oracle 12c new SQL and PL/SQL features. I added review sections and mastery questions to each chapter, and expanded examples and techniques. To conserve space and avoid reprinting duplicate code blocks, I adopted line numbers for the code segments so I could provide the technique variations by line numbers for alternate solutions.

You have complete examples on how to white list functions, procedures, packages, and object types with the new ACCESSIBLE BY clause. Likewise, you’ll learn how to use your PL/SQL variables inside embedded queries.

The improved collection coverage shows you how to write PL/SQL functions that let you use unnested UPDATE statements to add, change, and remove elements from Attribute Data Types (ADTs), and the expanded SQL Primer shows you how to update nested User-Defined Types (UDTs) without having to write PL/SQL. The book also shows you how to export object tables or columns into relational tables for ETL processes.

Oracle12cBooksArriveThe Oracle Database Primer grew to include more database administration, multiversion concurrency control, SQL tuning, and SQL tracing. The SQL Primer now contains expanded coverage on data types, Data Definition Language (DDL), Data Manipulation Language (DML), Transaction Control Language (TCL), SQL queries, joins, and unnesting queries. The SQL Built-in Functions appendix was expanded to enable me to remove side discussions about SQL elements from the PL/SQL chapters. John Harper wrote some wonderful examples of DBMS_COMPARISON, DBMS_CRYPTO, and DBMS_FGA to supplement the PL/SQL Built-in Packages and Types appendix. The Regular Expression Primer was rewritten to make it easier to read and use.

I’ve created an Errata for the Oracle Database 12c PL/SQL Programming. If you buy a copy and find an error, please post a comment in the errata.

Written by maclochlainn

February 1st, 2014 at 9:31 pm

4 Responses to 'Oracle 12c PL/SQL Published'

Subscribe to comments with RSS or TrackBack to 'Oracle 12c PL/SQL Published'.

  1. Congrats, Michael! Your primers sound very useful; I wish you the best with this edition, and all your readers as well….SF

  2. Thanks Steven, and good luck with your Oracle PL/SQL Programming, 6th Edition.


    3 Feb 14 at 2:12 pm

  3. In appendix B, table B-4 you list BLOB sizes too large at 8-32TB. Oracle documentation states 4GB maximums.

    Steve Jacobs

    28 Jul 14 at 10:56 am

  4. Steve, Where did you find that?

    The Oracle Database SQL Language Reference, 12c Release 1 (12.1) E41329-08 says:

    “The BLOB data type stores unstructured binary large objects. BLOB objects can be thought of as bitstreams with no character set semantics. BLOB objects can store binary data up to (4 gigabytes -1) * (the value of the CHUNK parameter of LOB storage). If the tablespaces in your database are of standard block size, and if you have used the default value of the CHUNK parameter of LOB storage when creating a LOB column, then this is equivalent to (4 gigabytes – 1) * (database block size).

    BLOB objects have full transactional support. Changes made through SQL, the DBMS_LOB package, or Oracle Call Interface (OCI) participate fully in the transaction. BLOB value manipulations can be committed and rolled back. However, you cannot save a BLOB locator in a PL/SQL or OCI variable in one transaction and then use it in another transaction or session.”



    30 Jul 14 at 2:41 pm

Leave a Reply