X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Flib%2Fsqlite.sql;h=a004090e7bdd7754ebdda475daa7286871840b8a;hb=26283ee38f220f6c6bae720ea5a189c9c0f47f6f;hp=aa0d08f89901feeac43c622e69829cd93c3b12cb;hpb=47eea6b86f093a830fff1ebb0e7d16f13fa3fe26;p=dbsrgits%2FDBIx-Class.git diff --git a/t/lib/sqlite.sql b/t/lib/sqlite.sql index aa0d08f..a004090 100644 --- a/t/lib/sqlite.sql +++ b/t/lib/sqlite.sql @@ -1,53 +1,199 @@ -- -- Created by SQL::Translator::Producer::SQLite --- Created on Sat May 20 01:05:10 2006 +-- Created on Mon Sep 21 00:11:34 2009 -- + + BEGIN TRANSACTION; -- +-- Table: artist +-- +CREATE TABLE artist ( + artistid INTEGER PRIMARY KEY NOT NULL, + name varchar(100), + rank integer NOT NULL DEFAULT '13', + charfield char(10) +); + +CREATE INDEX artist_name_hookidx ON artist (name); + +-- +-- Table: bindtype_test +-- +CREATE TABLE bindtype_test ( + id INTEGER PRIMARY KEY NOT NULL, + bytea blob, + blob blob, + clob clob +); + +-- +-- Table: collection +-- +CREATE TABLE collection ( + collectionid INTEGER PRIMARY KEY NOT NULL, + name varchar(100) NOT NULL +); + +-- -- Table: employee -- CREATE TABLE employee ( employee_id INTEGER PRIMARY KEY NOT NULL, position integer NOT NULL, group_id integer, + group_id_2 integer, + group_id_3 integer, name varchar(100) ); -- --- Table: serialized +-- Table: encoded -- -CREATE TABLE serialized ( +CREATE TABLE encoded ( id INTEGER PRIMARY KEY NOT NULL, - serialized text NOT NULL + encoded varchar(100) ); -- --- Table: liner_notes +-- Table: event -- -CREATE TABLE liner_notes ( - liner_id INTEGER PRIMARY KEY NOT NULL, - notes varchar(100) NOT NULL +CREATE TABLE event ( + id INTEGER PRIMARY KEY NOT NULL, + starts_at datetime NOT NULL, + created_on timestamp NOT NULL, + varchar_date varchar(20), + varchar_datetime varchar(20), + skip_inflation datetime, + ts_without_tz datetime ); -- --- Table: cd_to_producer +-- Table: file_columns -- -CREATE TABLE cd_to_producer ( - cd integer NOT NULL, - producer integer NOT NULL, - PRIMARY KEY (cd, producer) +CREATE TABLE file_columns ( + id INTEGER PRIMARY KEY NOT NULL, + file varchar(255) NOT NULL ); -- --- Table: artist +-- Table: fourkeys -- -CREATE TABLE artist ( - artistid INTEGER PRIMARY KEY NOT NULL, - name varchar(100) +CREATE TABLE fourkeys ( + foo integer NOT NULL, + bar integer NOT NULL, + hello integer NOT NULL, + goodbye integer NOT NULL, + sensors character(10) NOT NULL, + read_count integer, + PRIMARY KEY (foo, bar, hello, goodbye) +); + +-- +-- Table: genre +-- +CREATE TABLE genre ( + genreid INTEGER PRIMARY KEY NOT NULL, + name varchar(100) NOT NULL +); + +CREATE UNIQUE INDEX genre_name ON genre (name); + +-- +-- Table: link +-- +CREATE TABLE link ( + id INTEGER PRIMARY KEY NOT NULL, + url varchar(100), + title varchar(100) +); + +-- +-- Table: money_test +-- +CREATE TABLE money_test ( + id INTEGER PRIMARY KEY NOT NULL, + amount money ); -- +-- Table: noprimarykey +-- +CREATE TABLE noprimarykey ( + foo integer NOT NULL, + bar integer NOT NULL, + baz integer NOT NULL +); + +CREATE UNIQUE INDEX foo_bar ON noprimarykey (foo, bar); + +-- +-- Table: onekey +-- +CREATE TABLE onekey ( + id INTEGER PRIMARY KEY NOT NULL, + artist integer NOT NULL, + cd integer NOT NULL +); + +-- +-- Table: owners +-- +CREATE TABLE owners ( + id INTEGER PRIMARY KEY NOT NULL, + name varchar(100) NOT NULL +); + +-- +-- Table: producer +-- +CREATE TABLE producer ( + producerid INTEGER PRIMARY KEY NOT NULL, + name varchar(100) NOT NULL +); + +CREATE UNIQUE INDEX prod_name ON producer (name); + +-- +-- Table: self_ref +-- +CREATE TABLE self_ref ( + id INTEGER PRIMARY KEY NOT NULL, + name varchar(100) NOT NULL +); + +-- +-- Table: sequence_test +-- +CREATE TABLE sequence_test ( + pkid1 integer NOT NULL, + pkid2 integer NOT NULL, + nonpkid integer NOT NULL, + name varchar(100), + PRIMARY KEY (pkid1, pkid2) +); + +-- +-- Table: serialized +-- +CREATE TABLE serialized ( + id INTEGER PRIMARY KEY NOT NULL, + serialized text NOT NULL +); + +-- +-- Table: treelike +-- +CREATE TABLE treelike ( + id INTEGER PRIMARY KEY NOT NULL, + parent integer, + name varchar(100) NOT NULL +); + +CREATE INDEX treelike_idx_parent ON treelike (parent); + +-- -- Table: twokeytreelike -- CREATE TABLE twokeytreelike ( @@ -59,6 +205,65 @@ CREATE TABLE twokeytreelike ( PRIMARY KEY (id1, id2) ); +CREATE INDEX twokeytreelike_idx_parent1_parent2 ON twokeytreelike (parent1, parent2); + +CREATE UNIQUE INDEX tktlnameunique ON twokeytreelike (name); + +-- +-- Table: typed_object +-- +CREATE TABLE typed_object ( + objectid INTEGER PRIMARY KEY NOT NULL, + type varchar(100) NOT NULL, + value varchar(100) NOT NULL +); + +-- +-- Table: artist_undirected_map +-- +CREATE TABLE artist_undirected_map ( + id1 integer NOT NULL, + id2 integer NOT NULL, + PRIMARY KEY (id1, id2) +); + +CREATE INDEX artist_undirected_map_idx_id1 ON artist_undirected_map (id1); + +CREATE INDEX artist_undirected_map_idx_id2 ON artist_undirected_map (id2); + +-- +-- Table: bookmark +-- +CREATE TABLE bookmark ( + id INTEGER PRIMARY KEY NOT NULL, + link integer +); + +CREATE INDEX bookmark_idx_link ON bookmark (link); + +-- +-- Table: books +-- +CREATE TABLE books ( + id INTEGER PRIMARY KEY NOT NULL, + source varchar(100) NOT NULL, + owner integer NOT NULL, + title varchar(100) NOT NULL, + price integer +); + +CREATE INDEX books_idx_owner ON books (owner); + +-- +-- Table: forceforeign +-- +CREATE TABLE forceforeign ( + artist INTEGER PRIMARY KEY NOT NULL, + cd integer NOT NULL +); + +CREATE INDEX forceforeign_idx_artist ON forceforeign (artist); + -- -- Table: self_ref_alias -- @@ -68,6 +273,29 @@ CREATE TABLE self_ref_alias ( PRIMARY KEY (self_ref, alias) ); +CREATE INDEX self_ref_alias_idx_alias ON self_ref_alias (alias); + +CREATE INDEX self_ref_alias_idx_self_ref ON self_ref_alias (self_ref); + +-- +-- Table: track +-- +CREATE TABLE track ( + trackid INTEGER PRIMARY KEY NOT NULL, + cd integer NOT NULL, + position int NOT NULL, + title varchar(100) NOT NULL, + last_updated_on datetime, + last_updated_at datetime, + small_dt smalldatetime +); + +CREATE INDEX track_idx_cd ON track (cd); + +CREATE UNIQUE INDEX track_cd_position ON track (cd, position); + +CREATE UNIQUE INDEX track_cd_title ON track (cd, title); + -- -- Table: cd -- @@ -75,44 +303,72 @@ CREATE TABLE cd ( cdid INTEGER PRIMARY KEY NOT NULL, artist integer NOT NULL, title varchar(100) NOT NULL, - year varchar(100) NOT NULL + year varchar(100) NOT NULL, + genreid integer, + single_track integer ); +CREATE INDEX cd_idx_artist ON cd (artist); + +CREATE INDEX cd_idx_genreid ON cd (genreid); + +CREATE INDEX cd_idx_single_track ON cd (single_track); + +CREATE UNIQUE INDEX cd_artist_title ON cd (artist, title); + -- --- Table: bookmark +-- Table: collection_object -- -CREATE TABLE bookmark ( - id INTEGER PRIMARY KEY NOT NULL, - link integer NOT NULL +CREATE TABLE collection_object ( + collection integer NOT NULL, + object integer NOT NULL, + PRIMARY KEY (collection, object) ); +CREATE INDEX collection_object_idx_collection ON collection_object (collection); + +CREATE INDEX collection_object_idx_object ON collection_object (object); + -- --- Table: track +-- Table: lyrics -- -CREATE TABLE track ( - trackid INTEGER PRIMARY KEY NOT NULL, - cd integer NOT NULL, - position integer NOT NULL, - title varchar(100) NOT NULL +CREATE TABLE lyrics ( + lyric_id INTEGER PRIMARY KEY NOT NULL, + track_id integer NOT NULL ); +CREATE INDEX lyrics_idx_track_id ON lyrics (track_id); + -- --- Table: self_ref +-- Table: cd_artwork -- -CREATE TABLE self_ref ( - id INTEGER PRIMARY KEY NOT NULL, - name varchar(100) NOT NULL +CREATE TABLE cd_artwork ( + cd_id INTEGER PRIMARY KEY NOT NULL +); + +CREATE INDEX cd_artwork_idx_cd_id ON cd_artwork (cd_id); + +-- +-- Table: liner_notes +-- +CREATE TABLE liner_notes ( + liner_id INTEGER PRIMARY KEY NOT NULL, + notes varchar(100) NOT NULL ); +CREATE INDEX liner_notes_idx_liner_id ON liner_notes (liner_id); + -- --- Table: treelike +-- Table: lyric_versions -- -CREATE TABLE treelike ( +CREATE TABLE lyric_versions ( id INTEGER PRIMARY KEY NOT NULL, - parent integer NOT NULL, - name varchar(100) NOT NULL + lyric_id integer NOT NULL, + text varchar(100) NOT NULL ); +CREATE INDEX lyric_versions_idx_lyric_id ON lyric_versions (lyric_id); + -- -- Table: tags -- @@ -122,32 +378,34 @@ CREATE TABLE tags ( tag varchar(100) NOT NULL ); --- --- Table: treelike --- -CREATE TABLE treelike ( - id INTEGER PRIMARY KEY NOT NULL, - parent integer NOT NULL, - name varchar(100) NOT NULL -); +CREATE INDEX tags_idx_cd ON tags (cd); -- --- Table: link +-- Table: cd_to_producer -- -CREATE TABLE link ( - id INTEGER PRIMARY KEY NOT NULL, - url varchar(100), - title varchar(100) +CREATE TABLE cd_to_producer ( + cd integer NOT NULL, + producer integer NOT NULL, + attribute integer, + PRIMARY KEY (cd, producer) ); +CREATE INDEX cd_to_producer_idx_cd ON cd_to_producer (cd); + +CREATE INDEX cd_to_producer_idx_producer ON cd_to_producer (producer); + -- --- Table: event +-- Table: images -- -CREATE TABLE event ( +CREATE TABLE images ( id INTEGER PRIMARY KEY NOT NULL, - starts_at datetime NOT NULL + artwork_id integer NOT NULL, + name varchar(100) NOT NULL, + data blob ); +CREATE INDEX images_idx_artwork_id ON images (artwork_id); + -- -- Table: twokeys -- @@ -157,43 +415,44 @@ CREATE TABLE twokeys ( PRIMARY KEY (artist, cd) ); --- --- Table: fourkeys --- -CREATE TABLE fourkeys ( - foo integer NOT NULL, - bar integer NOT NULL, - hello integer NOT NULL, - goodbye integer NOT NULL, - PRIMARY KEY (foo, bar, hello, goodbye) -); +CREATE INDEX twokeys_idx_artist ON twokeys (artist); -- --- Table: artist_undirected_map +-- Table: artwork_to_artist -- -CREATE TABLE artist_undirected_map ( - id1 integer NOT NULL, - id2 integer NOT NULL, - PRIMARY KEY (id1, id2) +CREATE TABLE artwork_to_artist ( + artwork_cd_id integer NOT NULL, + artist_id integer NOT NULL, + PRIMARY KEY (artwork_cd_id, artist_id) ); +CREATE INDEX artwork_to_artist_idx_artist_id ON artwork_to_artist (artist_id); + +CREATE INDEX artwork_to_artist_idx_artwork_cd_id ON artwork_to_artist (artwork_cd_id); + -- --- Table: onekey --- -CREATE TABLE onekey ( - id INTEGER PRIMARY KEY NOT NULL, - artist integer NOT NULL, - cd integer NOT NULL +-- Table: fourkeys_to_twokeys +-- +CREATE TABLE fourkeys_to_twokeys ( + f_foo integer NOT NULL, + f_bar integer NOT NULL, + f_hello integer NOT NULL, + f_goodbye integer NOT NULL, + t_artist integer NOT NULL, + t_cd integer NOT NULL, + autopilot character NOT NULL, + pilot_sequence integer, + PRIMARY KEY (f_foo, f_bar, f_hello, f_goodbye, t_artist, t_cd) ); +CREATE INDEX fourkeys_to_twokeys_idx_f_foo_f_bar_f_hello_f_goodbye ON fourkeys_to_twokeys (f_foo, f_bar, f_hello, f_goodbye); + +CREATE INDEX fourkeys_to_twokeys_idx_t_artist_t_cd ON fourkeys_to_twokeys (t_artist, t_cd); + -- --- Table: producer +-- View: year2000cds -- -CREATE TABLE producer ( - producerid INTEGER PRIMARY KEY NOT NULL, - name varchar(100) NOT NULL -); +CREATE VIEW year2000cds AS + SELECT cdid, artist, title FROM cd WHERE year ='2000'; -CREATE UNIQUE INDEX tktlnameunique_twokeytreelike on twokeytreelike (name); -CREATE UNIQUE INDEX artist_title_cd on cd (artist, title); COMMIT;