What's New in the Second Edition?

The first edition of this book was published in March 1999. At the time, I didn't think that SQL*Plus would ever change much. After all, it was a mature product, and certainly, I thought, Oracle would focus its creative energies elsewhere. I was wrong. It was that same year, at OracleWorld 1999, I believe, when I first learned about the new SET MARKUP command and the impending addition of HTML output to the SQL*Plus repertoire. And as if that wasn't surprise enough, those HTML capabilities were the prelude to a full-blown, three-tier, browser-based version of my favorite and most used command-line utility that we now know as iSQL*Plus. So, the first thing I did when revising this book was to add coverage for these and other new developments that have taken place over the years:

  • Following the chapter on interacting with command-line SQL*Plus, you'll find the new Chapter 3 covering the use of the new, browser-based iSQL*Plus.

  • It turns out that you can use the HTML capabilities represented by SET MARKUP to generate some impressive-looking web pages, and thus SQL*Plus is one tool that you can use to develop database-backed web reports. Chapter 6 shows you how.

One of the strengths of this book is that it uses SQL*Plus as an excuse to range over a wide swath of Oracle functionality, perhaps making the book a reasonably good introduction to Oracle as opposed to just SQL*Plus. For example, Chapter 9, after showing you how to extract data, goes on to introduce you to the equally venerable SQL*Loader utility. Some of the Oracle functionality that I cover has been updated and enhanced, leading me to likewise update this book's coverage:

  • To Chapter 9, I've added an introduction to the external table feature introduced in Oracle9i Database. External tables provide you with SELECT statement access to external data, greatly increasing your options for transforming such data during a load.

  • Chapter 12, which covers the use of EXPLAIN PLAN to show execution plans for SQL statements, has been updated to reflect all the hints supported by Oracle Database 10g. This chapter also shows the use of the new DBMS_XPLAN package introduced in Oracle9i Database Release 2. That package makes it easier than ever before to generate a well-formatted display of an execution plan.

Finally, I've been privileged to receive many reader comments and suggestions over the years that have led to many improvements and changes throughout the book. These range from the minor (but oh so useful!) information, such as K. Vainstein's suggestion in Chapter 10 for using PROMPT to remind users of command-line arguments, to the addition of an entirely new chapter, consisting of a lightning tutorial on SQL.

I'm pleased with the way this second edition has turned out, and I hope you will be too. I've tried to keep all the good from the first edition while adding new content in response to reader suggestions and Oracle's product enhancements. While doing all that work, I've had two of the pickiest and most careful Oracle people that I know, Tom Kyte and Gregor Theis, looking over my shoulder and pointing out mistakes, suggesting ways that I could say things better and more clearly, and even offering up for inclusion a few useful techniques that I hadn't thought of. You hold the result in your hands, and all of us who have been involved hope you are well satisfied with the value between the two covers.

Get Oracle SQL*Plus: The Definitive Guide, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.