Backout sybase changes
[dbsrgits/DBIx-Class.git] / t / lib / sqlite.sql
1 -- 
2 -- Created by SQL::Translator::Producer::SQLite
3 -- Created on Mon Sep 21 00:11:34 2009
4 -- 
5
6
7 BEGIN TRANSACTION;
8
9 --
10 -- Table: artist
11 --
12 CREATE TABLE artist (
13   artistid INTEGER PRIMARY KEY NOT NULL,
14   name varchar(100),
15   rank integer NOT NULL DEFAULT '13',
16   charfield char(10)
17 );
18
19 CREATE INDEX artist_name_hookidx ON artist (name);
20
21 --
22 -- Table: bindtype_test
23 --
24 CREATE TABLE bindtype_test (
25   id INTEGER PRIMARY KEY NOT NULL,
26   bytea blob,
27   blob blob,
28   clob clob
29 );
30
31 --
32 -- Table: collection
33 --
34 CREATE TABLE collection (
35   collectionid INTEGER PRIMARY KEY NOT NULL,
36   name varchar(100) NOT NULL
37 );
38
39 --
40 -- Table: employee
41 --
42 CREATE TABLE employee (
43   employee_id INTEGER PRIMARY KEY NOT NULL,
44   position integer NOT NULL,
45   group_id integer,
46   group_id_2 integer,
47   group_id_3 integer,
48   name varchar(100)
49 );
50
51 --
52 -- Table: encoded
53 --
54 CREATE TABLE encoded (
55   id INTEGER PRIMARY KEY NOT NULL,
56   encoded varchar(100)
57 );
58
59 --
60 -- Table: event
61 --
62 CREATE TABLE event (
63   id INTEGER PRIMARY KEY NOT NULL,
64   starts_at datetime NOT NULL,
65   created_on timestamp NOT NULL,
66   varchar_date varchar(20),
67   varchar_datetime varchar(20),
68   skip_inflation datetime,
69   ts_without_tz datetime
70 );
71
72 --
73 -- Table: file_columns
74 --
75 CREATE TABLE file_columns (
76   id INTEGER PRIMARY KEY NOT NULL,
77   file varchar(255) NOT NULL
78 );
79
80 --
81 -- Table: fourkeys
82 --
83 CREATE TABLE fourkeys (
84   foo integer NOT NULL,
85   bar integer NOT NULL,
86   hello integer NOT NULL,
87   goodbye integer NOT NULL,
88   sensors character(10) NOT NULL,
89   read_count integer,
90   PRIMARY KEY (foo, bar, hello, goodbye)
91 );
92
93 --
94 -- Table: genre
95 --
96 CREATE TABLE genre (
97   genreid INTEGER PRIMARY KEY NOT NULL,
98   name varchar(100) NOT NULL
99 );
100
101 CREATE UNIQUE INDEX genre_name ON genre (name);
102
103 --
104 -- Table: link
105 --
106 CREATE TABLE link (
107   id INTEGER PRIMARY KEY NOT NULL,
108   url varchar(100),
109   title varchar(100)
110 );
111
112 --
113 -- Table: money_test
114 --
115 CREATE TABLE money_test (
116   id INTEGER PRIMARY KEY NOT NULL,
117   amount money
118 );
119
120 --
121 -- Table: noprimarykey
122 --
123 CREATE TABLE noprimarykey (
124   foo integer NOT NULL,
125   bar integer NOT NULL,
126   baz integer NOT NULL
127 );
128
129 CREATE UNIQUE INDEX foo_bar ON noprimarykey (foo, bar);
130
131 --
132 -- Table: onekey
133 --
134 CREATE TABLE onekey (
135   id INTEGER PRIMARY KEY NOT NULL,
136   artist integer NOT NULL,
137   cd integer NOT NULL
138 );
139
140 --
141 -- Table: owners
142 --
143 CREATE TABLE owners (
144   id INTEGER PRIMARY KEY NOT NULL,
145   name varchar(100) NOT NULL
146 );
147
148 --
149 -- Table: producer
150 --
151 CREATE TABLE producer (
152   producerid INTEGER PRIMARY KEY NOT NULL,
153   name varchar(100) NOT NULL
154 );
155
156 CREATE UNIQUE INDEX prod_name ON producer (name);
157
158 --
159 -- Table: self_ref
160 --
161 CREATE TABLE self_ref (
162   id INTEGER PRIMARY KEY NOT NULL,
163   name varchar(100) NOT NULL
164 );
165
166 --
167 -- Table: sequence_test
168 --
169 CREATE TABLE sequence_test (
170   pkid1 integer NOT NULL,
171   pkid2 integer NOT NULL,
172   nonpkid integer NOT NULL,
173   name varchar(100),
174   PRIMARY KEY (pkid1, pkid2)
175 );
176
177 --
178 -- Table: serialized
179 --
180 CREATE TABLE serialized (
181   id INTEGER PRIMARY KEY NOT NULL,
182   serialized text NOT NULL
183 );
184
185 --
186 -- Table: treelike
187 --
188 CREATE TABLE treelike (
189   id INTEGER PRIMARY KEY NOT NULL,
190   parent integer,
191   name varchar(100) NOT NULL
192 );
193
194 CREATE INDEX treelike_idx_parent ON treelike (parent);
195
196 --
197 -- Table: twokeytreelike
198 --
199 CREATE TABLE twokeytreelike (
200   id1 integer NOT NULL,
201   id2 integer NOT NULL,
202   parent1 integer NOT NULL,
203   parent2 integer NOT NULL,
204   name varchar(100) NOT NULL,
205   PRIMARY KEY (id1, id2)
206 );
207
208 CREATE INDEX twokeytreelike_idx_parent1_parent2 ON twokeytreelike (parent1, parent2);
209
210 CREATE UNIQUE INDEX tktlnameunique ON twokeytreelike (name);
211
212 --
213 -- Table: typed_object
214 --
215 CREATE TABLE typed_object (
216   objectid INTEGER PRIMARY KEY NOT NULL,
217   type varchar(100) NOT NULL,
218   value varchar(100) NOT NULL
219 );
220
221 --
222 -- Table: artist_undirected_map
223 --
224 CREATE TABLE artist_undirected_map (
225   id1 integer NOT NULL,
226   id2 integer NOT NULL,
227   PRIMARY KEY (id1, id2)
228 );
229
230 CREATE INDEX artist_undirected_map_idx_id1 ON artist_undirected_map (id1);
231
232 CREATE INDEX artist_undirected_map_idx_id2 ON artist_undirected_map (id2);
233
234 --
235 -- Table: bookmark
236 --
237 CREATE TABLE bookmark (
238   id INTEGER PRIMARY KEY NOT NULL,
239   link integer
240 );
241
242 CREATE INDEX bookmark_idx_link ON bookmark (link);
243
244 --
245 -- Table: books
246 --
247 CREATE TABLE books (
248   id INTEGER PRIMARY KEY NOT NULL,
249   source varchar(100) NOT NULL,
250   owner integer NOT NULL,
251   title varchar(100) NOT NULL,
252   price integer
253 );
254
255 CREATE INDEX books_idx_owner ON books (owner);
256
257 --
258 -- Table: forceforeign
259 --
260 CREATE TABLE forceforeign (
261   artist INTEGER PRIMARY KEY NOT NULL,
262   cd integer NOT NULL
263 );
264
265 CREATE INDEX forceforeign_idx_artist ON forceforeign (artist);
266
267 --
268 -- Table: self_ref_alias
269 --
270 CREATE TABLE self_ref_alias (
271   self_ref integer NOT NULL,
272   alias integer NOT NULL,
273   PRIMARY KEY (self_ref, alias)
274 );
275
276 CREATE INDEX self_ref_alias_idx_alias ON self_ref_alias (alias);
277
278 CREATE INDEX self_ref_alias_idx_self_ref ON self_ref_alias (self_ref);
279
280 --
281 -- Table: track
282 --
283 CREATE TABLE track (
284   trackid INTEGER PRIMARY KEY NOT NULL,
285   cd integer NOT NULL,
286   position int NOT NULL,
287   title varchar(100) NOT NULL,
288   last_updated_on datetime,
289   last_updated_at datetime,
290   small_dt smalldatetime
291 );
292
293 CREATE INDEX track_idx_cd ON track (cd);
294
295 CREATE UNIQUE INDEX track_cd_position ON track (cd, position);
296
297 CREATE UNIQUE INDEX track_cd_title ON track (cd, title);
298
299 --
300 -- Table: cd
301 --
302 CREATE TABLE cd (
303   cdid INTEGER PRIMARY KEY NOT NULL,
304   artist integer NOT NULL,
305   title varchar(100) NOT NULL,
306   year varchar(100) NOT NULL,
307   genreid integer,
308   single_track integer
309 );
310
311 CREATE INDEX cd_idx_artist ON cd (artist);
312
313 CREATE INDEX cd_idx_genreid ON cd (genreid);
314
315 CREATE INDEX cd_idx_single_track ON cd (single_track);
316
317 CREATE UNIQUE INDEX cd_artist_title ON cd (artist, title);
318
319 --
320 -- Table: collection_object
321 --
322 CREATE TABLE collection_object (
323   collection integer NOT NULL,
324   object integer NOT NULL,
325   PRIMARY KEY (collection, object)
326 );
327
328 CREATE INDEX collection_object_idx_collection ON collection_object (collection);
329
330 CREATE INDEX collection_object_idx_object ON collection_object (object);
331
332 --
333 -- Table: lyrics
334 --
335 CREATE TABLE lyrics (
336   lyric_id INTEGER PRIMARY KEY NOT NULL,
337   track_id integer NOT NULL
338 );
339
340 CREATE INDEX lyrics_idx_track_id ON lyrics (track_id);
341
342 --
343 -- Table: cd_artwork
344 --
345 CREATE TABLE cd_artwork (
346   cd_id INTEGER PRIMARY KEY NOT NULL
347 );
348
349 CREATE INDEX cd_artwork_idx_cd_id ON cd_artwork (cd_id);
350
351 --
352 -- Table: liner_notes
353 --
354 CREATE TABLE liner_notes (
355   liner_id INTEGER PRIMARY KEY NOT NULL,
356   notes varchar(100) NOT NULL
357 );
358
359 CREATE INDEX liner_notes_idx_liner_id ON liner_notes (liner_id);
360
361 --
362 -- Table: lyric_versions
363 --
364 CREATE TABLE lyric_versions (
365   id INTEGER PRIMARY KEY NOT NULL,
366   lyric_id integer NOT NULL,
367   text varchar(100) NOT NULL
368 );
369
370 CREATE INDEX lyric_versions_idx_lyric_id ON lyric_versions (lyric_id);
371
372 --
373 -- Table: tags
374 --
375 CREATE TABLE tags (
376   tagid INTEGER PRIMARY KEY NOT NULL,
377   cd integer NOT NULL,
378   tag varchar(100) NOT NULL
379 );
380
381 CREATE INDEX tags_idx_cd ON tags (cd);
382
383 --
384 -- Table: cd_to_producer
385 --
386 CREATE TABLE cd_to_producer (
387   cd integer NOT NULL,
388   producer integer NOT NULL,
389   attribute integer,
390   PRIMARY KEY (cd, producer)
391 );
392
393 CREATE INDEX cd_to_producer_idx_cd ON cd_to_producer (cd);
394
395 CREATE INDEX cd_to_producer_idx_producer ON cd_to_producer (producer);
396
397 --
398 -- Table: images
399 --
400 CREATE TABLE images (
401   id INTEGER PRIMARY KEY NOT NULL,
402   artwork_id integer NOT NULL,
403   name varchar(100) NOT NULL,
404   data blob
405 );
406
407 CREATE INDEX images_idx_artwork_id ON images (artwork_id);
408
409 --
410 -- Table: twokeys
411 --
412 CREATE TABLE twokeys (
413   artist integer NOT NULL,
414   cd integer NOT NULL,
415   PRIMARY KEY (artist, cd)
416 );
417
418 CREATE INDEX twokeys_idx_artist ON twokeys (artist);
419
420 --
421 -- Table: artwork_to_artist
422 --
423 CREATE TABLE artwork_to_artist (
424   artwork_cd_id integer NOT NULL,
425   artist_id integer NOT NULL,
426   PRIMARY KEY (artwork_cd_id, artist_id)
427 );
428
429 CREATE INDEX artwork_to_artist_idx_artist_id ON artwork_to_artist (artist_id);
430
431 CREATE INDEX artwork_to_artist_idx_artwork_cd_id ON artwork_to_artist (artwork_cd_id);
432
433 --
434 -- Table: fourkeys_to_twokeys
435 --
436 CREATE TABLE fourkeys_to_twokeys (
437   f_foo integer NOT NULL,
438   f_bar integer NOT NULL,
439   f_hello integer NOT NULL,
440   f_goodbye integer NOT NULL,
441   t_artist integer NOT NULL,
442   t_cd integer NOT NULL,
443   autopilot character NOT NULL,
444   pilot_sequence integer,
445   PRIMARY KEY (f_foo, f_bar, f_hello, f_goodbye, t_artist, t_cd)
446 );
447
448 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);
449
450 CREATE INDEX fourkeys_to_twokeys_idx_t_artist_t_cd ON fourkeys_to_twokeys (t_artist, t_cd);
451
452 --
453 -- View: year2000cds
454 --
455 CREATE VIEW year2000cds AS
456     SELECT cdid, artist, title FROM cd WHERE year ='2000';
457
458 COMMIT;