Mastering Oracle PL/SQL: Practical Solutions

  • ISBN13: 9781590592175
  • Condition: USED – VERY GOOD
  • Notes:

Product Description
This isn’t a tutorial on how to code PL/SQL. It’s designed to show you how to code PL/SQL well. It shows you how to write code that will run quickly and won’t break in high-load, multiuser environments. It covers the vast array of the functionality that PL/SQL provides, including effective handling of relational and abstract data, security, triggers, dynamic web content presentation from within the database, creation of a DBA toolkit, and effective debugging techniques. This book sets out to redress the unjust criticism leveled at PL/SQL in years gone by. It gives you the tools and techniques to ensure that, whatever your needs are, the PL/SQL you build will run as efficiently as possible. The practical solutions provided in this book will help you to realize the true power and functionality PL/SQL can offer your projects. Mastering Oracle PL/SQL: Practical Solutions is targeted primarily toward the DBA or developer charged with the implementatio. . . More >>

Mastering Oracle PL/SQL: Practical Solutions

5 thoughts on “Mastering Oracle PL/SQL: Practical Solutions”

  1. I’ve had this book for a couple of months now. I’ve been waiting to finish it before writing a review, but it doesn’t look like I’ll be finished with it any time soon mostly because I’m using it as a reference book instead of reading it from front to back.

    Clearly the book wasn’t written as a reference book. Just look up almost any topic in the index and you’ll find a number of entries scattered all over the place. Pipe-lined functions, for example, are written about in 4 (four) separate chapters! But the index is good and the material isn’t redundant. The reason for this strange structure, I think, is as follows:

    The book is divided into two equal length sections. The first half deals in general with PL/SQL strategies and techniques: how to check your code for efficiency, why code should be in packages, how to use cursors, cursor variables, cursor expressions, anchored data types and collections. The second half of the book re-visits most of the same topics in an application centric way (often using PL/SQL supplied packages). It’s natural that some of the same techniques and strategies will be re-used and there will be some overlap in the application-oriented chapters.

    Sometimes though, the repetition is weird: both the trigger chapter and the security chapter describe a logon trigger that’s designed to prevent an ODBC user from accessing the database. The security chapter discusses the data base object grants that are necessary for the trigger to work while the trigger chapter omits all this. The trigger chapter discusses the security risk with the trigger, how a user can often rename the desktop application and bypass the trigger’s intent (and purpose) while the security chapter doesn’t mention that problem at all.

    The book’s style (but not its (lack of) organization) is clearly influenced by Tom Kyte’s writing, (one of the technical reviewers). Each proposition, especially in the first 1/2 of the book is backed up with a SQL proof/example/argument (based usually on the v$stat view). The style is taken to the max in the discussion of implicit vs. explicit cursors, (in chapter 3). There the discussion stretches over 10 pages and alternates between thesis anti-thesis proof and counter proof like a debate in a Tibetan monastery.

    A nice thing is that there’s often more than one solution to a problem. For example the code that monitors the Oracle alert file for error messages opens the alert file as an EXTERNAL TABLE, but then an alternate approach is described, which opens the alert file as a BFILE (an external LOB). This is coupled with an explanation about why you might want to go one way or the other, which is very illuminating (although in this specific case, I’m not sure why the author didn’t simply open the alert file using utl_file supplied package. )

    In my opinion, the chapter describing the PL/SQL Web Toolkit and related technologies is a treasure trove by itself and probably worth the price of the whole book. I don’t believe this information is available in such an engaging lucid way anywhere else. It’s the only chapter that I had read without stopping.

    The book came out as Oracle10g was being released, which raises an important question – is this book already outdated or not? My feeling is that the book is just relevant for 10g PL/SQL developers as 9i developers. The reason I say this is that the PL/SQL language from the developer’s point of view has not changed between 9i and 10g (See the paper on OTN ‘What’s New in PL/SQL in Oracle Database 10g?’ which emphasizes that the main changes in PL/SQL 10g – compiler and execution environment – are transparent to the developer. ) Maybe, for 10g, the book could have mentioned some of the new PL/SQL supplied packages, for example, dbms_scheduler in addition to dbms_job, or utl_mail instead of utl_smtp, htmldb in addition to the web toolkit, but obviously this has no impact on the book’s main message.

    What is the book’s main message? Demonstrate that the PL/SQL code you write is performant and scalable (chapter 1). The rest of the book is a hodgepodge of technical PL/SQL advice and techniques that should have been organized like a dictionary or an encyclopedia. But nothing is perfect and you can still learn a lot from this eccentric PL/SQL text (even if you can’t read it from cover to cover).
    Rating: 4 / 5

  2. The book takes a bottom-up approach: the first part shows useful coding and optimizing techniques, while the second one gives real world applications and tips on program design.

    I have two minor complaints, however:

    Most chapters assume at least a good knowledge of PL/SQL and build on that, which I think is fair for a book titled “Mastering . . . “. On the other hand, two of the chapters (Triggers especially, and PL/SQL Debugging to a degree) take a different approach and start from the beginning, explaining the basics, too. It may be just me, but I think those pages are wasted.

    Furthermore, there is a certain amount of overlap with Tom Kyte’s Expert One-on-One Oracle, also from Apress.
    Rating: 4 / 5

  3. With 15 years experience in Oracle as DBA and developer, I wrote a lot of packages and found in this book true advices and practical solutions, wich sound good to me. The best feature is that you can experiment all the code found in it and see by yourself the advantage of using the way proposed by McDonald. I like these books where autors breaks some common ideas ans show by “A + B” that the right solution is not the most common. A real useful book written by a true professional.
    Rating: 5 / 5

  4. Here’s he first thing that you will notice when you read this book: it is extremely easy to follow, with every explanation leading naturally to the next one, in a seamless way. Now I understand why the Author’s presentations at top-notch Oracle events are always “sold-out” – excellent knowledge mixed with excellent presentation skills is rarely found in the same person, but for sure Connor McDonald is an example of this rare breed. I may say that I “drank” more than “read” the book.

    The contents, that goes without saying, are really interesting, and I’ve already used the improved knowledge and new facts that I’ve got from the book for my code and designs. Most importantly, I know, given the Author’s reputation and method (always try things out and then provide a test case), that what’s in the book is correct and works – which, sadly, does not apply for too many books about Oracle out there.
    The book now is included in my “gold quality” bookshelf. Since this bookshelf is composed exclusively by books authored by Thomas Kyte, Jonathan Lewis, Steve Adams, Cary Millsap, James Morle, and now Connor McDonald, who are members of the OakTable Network (which i’ve nicknamed the “Oracle Scientist Club”, since in essence, the reason why they are so succesfull it’s that they follow the aforementioned method in investigating Oracle), I’m really sure that the “OakTable Press Series” is not to be missed, and I won’t miss for sure. Great!
    Rating: 5 / 5

  5. The book is good but many solutions are not tested fully so its not that they can be cut and pasted directly out of the book. you may have to troubleshoot many of them. Otherwise a real good book.
    Rating: 5 / 5

Leave a Reply

Your email address will not be published. Required fields are marked *