http://www.brentozar.com/archive/2009/09/whats-on-my-bookshelf/
Chapter 5
- ODBC Auto-Commit On
- ODBC Auto-Commit Off
- ODBC Disable Distributed Transactions
- ODBC Not Using a Server-Side RPC
- ODBC Using a Server-Side RPC
- ODBC Executing Prepared STMT Multiple Times
- ODBC Arrays of Parameters
- ODBC Cursor Library Only if Scrollable Cursors Unsupported
- ODBC Retrieving Long Data Unlimited
- ODBC Retrieving Long Data Limited
- ODBC Using SQLGetData
- ODBC Using SQLBindCol
- ODBC Using SQLExtendedFetch
- ODBC Complex Query
- ODBC Using SQLSpecialColumns
- ODBC Providing Null Values
- ODBC Providing Non-Null Values
- ODBC Using SQLColumns
- ODBC Using SQLDescribeCol
Chapter 6
- JDBC finally Block
- JDBC Auto-Commit On
- JDBC Auto-Commit Off
- JDBC Not Using Server-Side RPC
- JDBC Using a Server-Side RPC
- JDBC Executing Prepared STMT Multiple Times
- JDBC Using Batch
- JDBC Auto-Gen Keys1
- JDBC Auto-Gen Keys2
- JDBC Long Data1
- JDBC Long Data2
- JDBC Positioned Updates
- JDBC Complex Query
- JDBC Using GetBestRowIdentifier
- JDBC Null Values
- JDBC Non-Null Values
- JDBC Using GetColumns
- JDBC Using GetMetaData
Chapter 7
- ADO.net Finally Block
- ADO.net Using Block
- ADO.net Auto-Commit On
- ADO.net Auto-Commit Off
- ADO.net ExecuteNonQuery
- ADO.net ExecuteScalar
- ADO.net Prepared Command Object
- ADO.net Arrays of Parameters
- ADO.net Batch
- ADO.net Using UpdateBatchSize Property
- ADO.net STMT Generated by CommandBuilder
- ADO.net STMT Not Generated by CommandBuilder
- ADO.net Long Data
- ADO.net Long Data2
- ADO.net OracleCommand
- ADO.net Updating Data
Chapter 9
- Benchmark Bad Example
- Benchmark Good Example
- Benchmark Console
- Benchmark Test Data
- Benchmark Benchmark
Chapter 10













