I think you will find this book extremely useful and enlightening whether you've been involved with Oracle for years, or are a relative newcomer (although it would help to have a basic knowledge of SQL and PL/SQL beforehand). Its treatment of the subect matter is clear, concise, well-explained, and will save you hours of documentation trawling and experimentation. Although it's aimed primarily at developers, it would also be helpful to anybody trying to learn the DBA side of the job, as its explanation of the Oracle database architecture is the best and clearest I've seen so far. It's also all in one place; not spread out amongst half a dozen different manuals. I think if you're interested in being all you can be as an Oracle developer, you should buy this book. If you're a contractor and have an interest in giving contracting a good name, you should buy this book. If you're mainly a backup and recovery DBA who doesn't venture into the archtitecture that much, you should buy this book. If you want more of an understanding of how the Oracle database works, you should buy this book. Alternatively, if you'd like to give people like me more opportunities to rake in the cash by fixing performance problems, then please don't buy this book. ;o)
Since this book is the first volume of the second edition of "expert one-on-one: Oracle", which I've been reading and re-reading for years, I will review the book by comparing it with the previous edition, hoping to help people who are considering to "upgrade". First thing - if in the first edition you enjoyed the great writing style, the everything-backed-by-examples approach, and the handling of real-life scenarios coming from the (oustanding) experience of the Author ... great news for you: everything is still there, this edition matches (or even surpasses) the first as far as quality is concerned. Second, I've found a lot of new topics/chapters that are brand-new, not to be found in the first edition; for example the coverage of "write consistency", the excellent chapter about "datatypes", the "parallel execution" one - in addition, obviously, to the coverage of new features and objects of 9i/10g (automatic pga management, assm, index/table compression, sorted hash clustered tables, to name just a few). Third, the vast majority (90% or more) of the topics/chapters already present in the first edition have been improved (expanded and/or rewritten for better readability), with new examples and new scenarios - I particularly loved the new discussion about the log buffer/buffer cache interdependencies, the fresh section about "indexing myths", the use of statspack to show the impact of not using bind variables, the new ways to implement optimistic locking, and many others (there are too many to discuss, it really looks like a brand new book - a real "new edition", not just a "new version"). In short - lots of new material, first-edition stuff much improved - I couldn't ask for more or better.
I bought this book as an Oracle Developer hoping to improve the efficiency of my coding. The name "Programming Techniques and Solutions" lead me to think this was a book for developers rather than DBA's.
This book however is a lot more suitable for DBA's, with some sections that are not available for application developers.
If you are a DBA, I would definitely recommend this book as Thomas Kyle definitely knows his stuff. If you are an application developer working with PL/SQL, then there are more suitable books for us.
As usual Tom has written an excellent book that works well when read straight through or as a reference to dip into.
One criticism, and this is a criticism of the publisher, not the author. There is very little 'white space', white space (margins &c) is important in text books for psychological reasons and also to give you somewhere to jot notes (hence the phrase "Notes in the margin"), opportunity to do this is very limited in this book due to lack of space.