Title: SQL Server 2000 Programming by Example
Author: Fernando G. Guerrero and Carlos Eduardo Rojas
Publisher: Que (2001)
My introduction to relational databases occurred well before I started using SQL Server. What I've been looking for is information that would allow me to gain the in-depth knowledge about using SQL Server that I already possess for other relational database systems. As a .NET programmer, or a database programmer on any other platform, we often find ourselves in the role of a "reluctant dba". And thanks to the ease with which SQL Server can be managed, we've always been able to work through our problems using the online books and other references. However, personally I've always wanted to know more of the SQL Server implementation specifics. This book addresses my specific needs for this information about using SQL Server 2000.
The foreword warns us that we should already be familiar with database systems, but that specific knowledge of Transact-SQL is not required. After reading this book, I now feel that I have greater insight into using Transact-SQL--and my stored procedures are already more concise and much more efficient
Sometimes "by example" books can be tedious with long, repetitive samples. The authors have done a fairly good job of keeping the samples short and to the point, while still providing the details necessary to thoroughly understand the topic being presented.
I still use the SQL Server online documentation, but at least now I know what it is I'm looking for and have several additional examples to follow.
SQL Server 2000 Programming by Example
- 1. Relational Database Management Systems and SQL Server
- 2. Elements of Transact-SQL
- 3. Working with Tables and Views
- 4. Querying and Modifying Data
- 5. Querying Multiple Tables: JOINs
- 6. Optimizing Access to Data: Indexes
- 7. Enforcing Data Integrity
- 8. Implementing Busi9ness Logic: Programming Stored Procedures
- 9. Implementing Complex Processing Logic: Programming Triggers
- 10. Enhancing Business Logic: User-Defined Functions (UDF)
- 11. Using Complex Queries and Statements
- 12. Row-Oriented Processing: Using Cursors
- 13. Maintaining Data Consistency: Transactions and Locks
- 14. Transferring Data to and from SQL Server
- 15. Working with Heterogeneous Environments: Setting Up Linked Servers
- A. Using SQL Server Instances
- B. Using SQL Query Analyzer
The first few chapters contain the introductory view of relational database management systems. The basics of using Enterprise Manager and the Query Analyzer are explained throughout the book. As the book gets into the details of the SQL language, the specifics of the SQL Server implementation are also explained. There is a great description of how SQL Server implements indexes and how they should be used by the database programmer.
Many of my questions regarding the SQL Server implementation of nested stored procedures and triggers were finally answered. There is a very complete presentation of implementing business logic, including constraints, stored procedures, triggers and user-defined functions.
The book also includes a complete presentation of SQL Server's implementation of transactions, locking and setting isolation levels. And for the "reluctant dba", a chapter that includes a fairly complete description of transferring data to and from SQL Server. The final chapter deals with linked servers and distributed processing.
This book is a great tutorial and reference for database programmers who want in-depth information on using SQL Server 2000.
Steve Sharrock - www.AspAlliance.com/shark / www.SharkCode.com