Oracle PL/SQL By Example, 6th Ed

Author: Elena Rakhimov
Publisher: Oracle Press
Pages: 480
ISBN: 978-0138062835
Print: 0138062838
Audience: Developers interested in Oracle PL/SQL
Rating: 4
Reviewer: Kay Ewbank

This is the sixth edition of a well established title that has been updated for the latest version of PL/SQL (21c).

The book opens with a checklist of the new features in Oracle 21c before the actual opening chapter that introduces PL/SQL concepts - the architecture, development environment, and essential concepts such as substitution variables and the use of the output.put_line statement to display information. As you can tell from the essential concepts, this isn't really a book for beginners; the author a

ssumes you can deal with Oracle's environment, but there again, Oracle itself isn't a beginner's database. 

Banner

The next chapter looks at PL/SQL fundamentals - the language components, anchored datatypes, and the scope of variables, blocks, nested blocks and labels. By chapter three, Rakhimov is on to what most people would see as the heart of PL/SQL - the SQL statements and transaction control.

Rakhimov then has chapters on IF and CASE statements, followed by two chapters on loops. The next three chapters deal with error handling and exceptions.

By Chapter 11, Rakhimov has moved on to cursors, with two chapters explaining basic and advanced cursors. The chapter on basic cursors introduces implicit and explicit cursors, table-based and cursor-based record types, cursor For loops and nested cursors. The advanced chapter looks at passing parameters to cursors, cursor variable and expressions, and how to use For Update cursors.

There's a good chapter on triggers that starts from the basics and goes as far as row and statement triggers, and Instead of triggers. This is followed by a chapter on mutating tables and compound triggers.

Collections and records are tackled next, with descriptions of varrays, multidimensional collections, and nested records. This is followed by a chapter titled Native Dynamic SQL that introduces Execute Immediate statements, along with Open For and Fetch statements and how to use them. The concept of bulk SQL, specifically the use of ForAll and Bulk Collect statements to carry out batch processing, is covered next.

Classic SQL procedures and functions are covered well in the next two chapters before Rakhimov moves on to how to create and use packages, collections of procedures, functions and cursors.

There's a chapter on advanced concepts of stored code that introduces subprogram overloading, result cached functions, and invoking PL/SQL functions from SQL statements. This chapter had extensive example code, but I'd have liked to have seen more explanations alongside it.

Two chapters on object types come next, the first introducing object types, the second looking at how to store object types in tables. The book closes with a chapter on the use of dynamic SQL with the DBMS_SQL package as an alternative to native dynamic SQL.

If you're familiar with an earlier edition of the book, it's worth saying that quite a lot of the chapters in this edition have been updated with new labs, code examples and explanations. The more advanced ideas in Oracle 21c, including blockchain tables and machine learning algorithms have also been included.

Overall, the usefulness of this book depends on where you're starting from. It isn't a book for beginners, and while the explanations are clear if you understand the concepts, there are times when they seem to mimic what the documentation says rather than providing more. It covers the main topics you're likely to want to read about if you're learning PL/SQL, but it will be more useful for a developer who already knows how to work with a different SQL server.

Related Reviews

Oracle PL/SQL by Example, 5th Ed

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

Banner


Computer Concepts And Management Information Systems

Author:  C.P Gupta and K. K. Goyal
Publisher: Mercury Learning
Pages: 250
ISBN:978-1683925866
Print:1683925866
Kindle: B08CVSHKG3
Audience: General
Rating: 3
Reviewer: Kay Ewbank

This book is an introduction to the basics of what a computer is, what software is, and what management information syste [ ... ]



Seriously Good Software

Author: Marco Faella
Publisher: Manning
Date: March 2020
Pages: 328
ISBN: 978-1617296291
Print: 1617296295
Kindle: B09782DKN8
Audience: Relatively experienced Java programmers
Rating: 4.5
Reviewer: Mike James
Don't we all want to write seriously good software?


More Reviews