+
+if ( !-e "t/beerdb.db" ) {
+ print "Making SQLite DB\n";
+ eval { require DBD::SQLite };
+ die "No, wait, we don't have SQLite installed. Never mind\n" if $@;
+ require DBI;
+ my $dbh = DBI->connect("dbi:SQLite:dbname=t/beerdb.db");
+
+ my $sql = join( '', (<DATA>) );
+
+ for my $statement ( split /;/, $sql ) {
+ $statement =~ s/\#.*$//mg; # strip # comments
+ $statement =~ s/auto_increment//g;
+ next unless $statement =~ /\S/;
+ eval { $dbh->do($statement) };
+ die "$@: $statement" if $@;
+ }
+}
+
+__DATA__
+
+create table brewery (
+ id integer auto_increment primary key,
+ name varchar(30),
+ url varchar(50),
+ notes text
+);
+
+create table beer (
+ id integer auto_increment primary key,
+ brewery integer,
+ style integer,
+ name varchar(30),
+ url varchar(120),
+# tasted date,
+ score integer(2),
+ price varchar(12),
+ abv varchar(10),
+ notes text
+);
+
+create table handpump (
+ id integer auto_increment primary key,
+ beer integer,
+ pub integer
+);
+
+create table pub (
+ id integer auto_increment primary key,
+ name varchar(60),
+ url varchar(120),
+ notes text
+);
+
+create table style (
+ id integer auto_increment primary key,
+ name varchar(60),
+ notes text
+);
+
+INSERT INTO beer (id, brewery, name, abv) VALUES
+ (1, 1, "Organic Best Bitter", "4.1");
+INSERT INTO brewery (id, name, url) VALUES
+ (1, "St Peter's Brewery", "http://www.stpetersbrewery.co.uk/");
+INSERT INTO pub (id, name) VALUES (1, "Turf Tavern");
+INSERT INTO handpump (id, pub, beer) VALUES (1, 1,1);
+