X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FSchema%2FLoader%2FDBI%2FSQLite.pm;h=ab8bfef6509f61fb57b9feb06054526ab48d2224;hb=5223f24a6662ce33f7b60d2a3f6f83e83f5373cc;hp=603c672cda03fc34356deceaf5021b09ac20df37;hpb=a5f0231beb8e65e56d498f0f3b17b6774815c0bf;p=dbsrgits%2FDBIx-Class-Schema-Loader.git diff --git a/lib/DBIx/Class/Schema/Loader/DBI/SQLite.pm b/lib/DBIx/Class/Schema/Loader/DBI/SQLite.pm index 603c672..ab8bfef 100644 --- a/lib/DBIx/Class/Schema/Loader/DBI/SQLite.pm +++ b/lib/DBIx/Class/Schema/Loader/DBI/SQLite.pm @@ -33,8 +33,8 @@ sub _sqlite_parse_table { my @uniqs; my $dbh = $self->schema->storage->dbh; - my $sth = $dbh->prepare(<<""); -SELECT sql FROM sqlite_master WHERE tbl_name = ? + my $sth = $self->{_cache}->{sqlite_master} + ||= $dbh->prepare(q{SELECT sql FROM sqlite_master WHERE tbl_name = ?}); $sth->execute($table); my ($sql) = $sth->fetchrow_array; @@ -139,8 +139,9 @@ sub _table_uniq_info { sub _tables_list { my $self = shift; + my $dbh = $self->schema->storage->dbh; - my $sth = $dbh->prepare("SELECT * FROM sqlite_master"); + my $sth = $dbh->prepare("SELECT * FROM sqlite_master"); $sth->execute; my @tables; while ( my $row = $sth->fetchrow_hashref ) {