Run ensembl-test/scripts/convert_test_schemas.sh.
rows() doesn't work on SQLite for SELECT unless all rows actually fetched!

[test scripts]
rows() doesn't work on SQLite for SELECT unless all rows actually fetched!

[Adaptors]
BaseAdaptor.pm: properly unpack _tables().
"INSERT INTO table SET col1=val1, col2=val2" does not work for SQLite.

Use "INSERT INTO table (col1, col2) VALUES (val1, val2) instead.
"INSERT IGNORE" vs "INSERT OR IGNORE" portability.
Need to use last_insert_id() instead of {mysql_insertid}.
port() and host() may not be set for all drivers.
dbConnection.t: quoting for SQLite.
sqlHelper.t: only attempt to alter engine for MySQL.
AttributeAdaptor.pm: portable SQL.

This may be sub-optimal for MySQL.
Make SQL more portable, where this has no side-effects.
STRAIGHT_JOIN optimisation only works on MySQL.
No support for the registry in SQLite yet.
Split out driver-specfic code into delegated subclasses.
Move DBD connection details into Driver::<type> subclasses.
last_insert_id(): move driver-specifics to Driver::<type> subclasses.
insert_ignore_clause(): move driver-specifics to Driver::<type> subclasses.
Move can_straight_join() to Driver::<type> subclasses.
Setting wait_timeout is MySQL-specific.