openDBAndCreateIfNotPresent

The Database interface provides a consistent and safe way to access sql RDBMSs.

Why are all the classes scope? To ensure the database connection is closed when you are done with it. The destructor cleans everything up.

(maybe including rolling back a transaction if one is going and it errors.... maybe, or that could bne scope(exit))

openDBAndCreateIfNotPresent
(
string filename
,
string sql
,
scope void delegate initialize = null
)

Meta