Advanced Perl DBI

01/07/2004


Click here to start


Table of Contents

Advanced Perl DBI

Topical Topics

Trimmed Topics and Tips

The DBI - What’s it all about?

A picture is worth?

Speed Speed Speed!

Give me speed!

Partition for speed

Prepare for speed

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!

Do more with less!

Speedy Summary

Optimizing Perl - Some Tips

Profiling DBI Performance

How fast was that?

How fast was what?

Attribution

Attribution - For Handles

Attribution - For Methods

What’s in a name?

Handling your Handles

Let the DBI cache your handles

Some prepare_cached() issues

Keep a handle on your databases

A connect_cached() example

Some connect_cached() issues

Binding (Value Bondage)

First, the simple stuff...

Then, some more detail...

Your TYPE or mine?

Got TIME for a DATE?

Some TYPE gotchas

Error Checking & Error Handling

The importance of error checking

Error checking - ways and means

Handling errors the smart way

Catching the Exception

Picking up the Pieces

Custom Error Handling

More Custom Error Handling

Information and Warnings

Transactions

Transactions - Eh?

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

What’s new with tracing?

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

Other Topics

Bulk Operations

DBI security tainting

Handling LONG/BLOB data

Portability

Portability in practice

SQL Portability - Data Types

SQL Portability - SQL Dialects

SQL Portability - SQL Dialects

SQL Portability - Driver Capabilities

SQL Portability - Metadata

DBI::SQL::Nano

DBI::SQL::Nano

DBI::SQL::Nano

The Power of the Proxy, Flexing the Multiplex, and a Pure-Perl DBI!

DBD::Proxy & DBI::ProxyServer

A Proxy Picture

Thin clients and other buzz words

The practical realities

DBD::Multiplex

DBI::PurePerl

And finally...

DBI v2 - Incompatible Changes

DBI v2 - Other Changes

DBI v2 - Also…

Reference Materials

The end.

Author: Tim Bunce

Email: dbi-users@perl.org

Home Page: dbi.perl.org

Download presentation source