Mostly good advice, though I'd add this caveat: Matt probably wouldn't and shouldn't change the default behaviour. There are lots of scripts out there that depend on the automatic database creation. I suppose the best way (if it belongs in the module at all) would be to allow users to pass a "sl_no_db_create" attribute in connect() that would trigger the die on non-existant database behaviour