Table of Contents
Advanced DBI
Topical Topics
Trimmed Topics and Tips
What’s it all about?
A picture is worth?
Speed Speed Speed!
Give me speed!
Partition for speed
Prepare for speed
How would you do it?
The best laid plans
MySQL’s EXPLAIN PLAN
Oracle’s EXPLAIN PLAN
PPT Slide
Changing plans (hint hint)
Respect your server's SQL cache
Hot handles
Sling less for speed
Bind those columns!
Speedy Summary
Handling your Handles
Let the DBI cache your handles
Another prepare_cached() example
Keep a handle on your databases
A connect_cached() example
Some connect_cached() gotchas
Binding (Value Bondage)
First, the simple stuff...
Then, some more detail...
Your TYPE or mine?
Some TYPE gotchas
Error Checking & Error Handling
The importance of error checking
Error checking - ways and means
Handling errors the smart way
Handling errors the smart way
Transactions
Transactions - What's it all about?
Transactions - Life Preservers
Transactions - How the DBI helps
Transactions - Example code
Transactions - Further comments
Intermission?
Wheels within Wheels
Setting the scene
Architecture of the DBI classes #1
Architecture of the DBI classes #2
Anatomy of a DBI handle
Method call walk-through
Watching the DBI in action
Enabling tracing
Our program for today...
Trace level 1
Trace level 2 and above
DBI for the Web
Web DBI - Connect speed
Web DBI - Too many connections
Web DBI - State-less-ness
Web DBI - Browsing pages of results
Web DBI - Concurrent editing
Web DBI - Tips for the novice
DBI security tainting
Handling LONG/BLOB data
Portability
Portability in practice
The Power of the Proxy & Flexing the Multiplex
DBD::Proxy & DBI::ProxyServer
A Proxy Picture
Thin clients and other buzz words
The practical realities
DBD::Multiplex
And finally...
What’s new? (since the book)
What’s new? (since the book)
What’s new? (since the book)
What’s planned? (the big stuff)
What’s planned? (some other stuff)
And more? (sometime...)
Reference Materials
The end.
|