Trading card city builder game?
1--
2-- PostgreSQL database dump
3--
4
5\restrict aa4b4bc410c5cacbd97fc326d0f62806
6
7-- Dumped from database version 18.1 (Debian 18.1-1.pgdg13+2)
8-- Dumped by pg_dump version 18.1 (Debian 18.1-1.pgdg13+2)
9
10SET statement_timeout = 0;
11SET lock_timeout = 0;
12SET idle_in_transaction_session_timeout = 0;
13SET transaction_timeout = 0;
14SET client_encoding = 'UTF8';
15SET standard_conforming_strings = on;
16SELECT pg_catalog.set_config('search_path', '', false);
17SET check_function_bodies = false;
18SET xmloption = content;
19SET client_min_messages = warning;
20SET row_security = off;
21
22--
23-- Name: citext; Type: EXTENSION; Schema: -; Owner: -
24--
25
26CREATE EXTENSION IF NOT EXISTS citext WITH SCHEMA public;
27
28
29--
30-- Name: EXTENSION citext; Type: COMMENT; Schema: -; Owner: -
31--
32
33COMMENT ON EXTENSION citext IS 'data type for case-insensitive character strings';
34
35
36--
37-- Name: card_class; Type: TYPE; Schema: public; Owner: -
38--
39
40CREATE TYPE public.card_class AS ENUM (
41 'tile',
42 'citizen'
43);
44
45
46--
47-- Name: tile_category; Type: TYPE; Schema: public; Owner: -
48--
49
50CREATE TYPE public.tile_category AS ENUM (
51 'residential',
52 'production',
53 'amenity',
54 'source',
55 'trade',
56 'transportation'
57);
58
59
60SET default_tablespace = '';
61
62SET default_table_access_method = heap;
63
64--
65-- Name: accounts; Type: TABLE; Schema: public; Owner: -
66--
67
68CREATE TABLE public.accounts (
69 id public.citext NOT NULL,
70 CONSTRAINT accounts_id_check CHECK (((0 < length((id)::text)) AND (length((id)::text) <= 64)))
71);
72
73
74--
75-- Name: TABLE accounts; Type: COMMENT; Schema: public; Owner: -
76--
77
78COMMENT ON TABLE public.accounts IS 'Player/user accounts. Represents one person.';
79
80
81--
82-- Name: card_accounts; Type: TABLE; Schema: public; Owner: -
83--
84
85CREATE TABLE public.card_accounts (
86 card_id bigint NOT NULL,
87 account_id public.citext NOT NULL
88);
89
90
91--
92-- Name: TABLE card_accounts; Type: COMMENT; Schema: public; Owner: -
93--
94
95COMMENT ON TABLE public.card_accounts IS 'Records owners of card. Each card has at most one owner at any time.';
96
97
98--
99-- Name: card_sets; Type: TABLE; Schema: public; Owner: -
100--
101
102CREATE TABLE public.card_sets (
103 id text NOT NULL,
104 release_date timestamp with time zone NOT NULL,
105 CONSTRAINT card_sets_id_check CHECK (((0 < length(id)) AND (length(id) <= 64)))
106);
107
108
109--
110-- Name: TABLE card_sets; Type: COMMENT; Schema: public; Owner: -
111--
112
113COMMENT ON TABLE public.card_sets IS 'Every card is initially released as part of some card set, which can be used for collectors to organize their collections.';
114
115
116--
117-- Name: card_types; Type: TABLE; Schema: public; Owner: -
118--
119
120CREATE TABLE public.card_types (
121 id text NOT NULL,
122 card_set_id text DEFAULT 'default'::text NOT NULL,
123 class public.card_class NOT NULL,
124 CONSTRAINT card_types_id_check CHECK (((0 < length(id)) AND (length(id) <= 64)))
125);
126
127
128--
129-- Name: TABLE card_types; Type: COMMENT; Schema: public; Owner: -
130--
131
132COMMENT ON TABLE public.card_types IS 'Data representation of the types of cards available in the game. The implementation of most card functions is handled at runtime keyed off of the id.';
133
134
135--
136-- Name: cards; Type: TABLE; Schema: public; Owner: -
137--
138
139CREATE TABLE public.cards (
140 id bigint NOT NULL,
141 card_type_id text NOT NULL
142);
143
144
145--
146-- Name: TABLE cards; Type: COMMENT; Schema: public; Owner: -
147--
148
149COMMENT ON TABLE public.cards IS 'Every instance of every card that exists in the game. Not all are necessarily owned by an account, as some may be in packs still waiting to be found/opened.';
150
151
152--
153-- Name: cards_id_seq; Type: SEQUENCE; Schema: public; Owner: -
154--
155
156ALTER TABLE public.cards ALTER COLUMN id ADD GENERATED ALWAYS AS IDENTITY (
157 SEQUENCE NAME public.cards_id_seq
158 START WITH 1
159 INCREMENT BY 1
160 NO MINVALUE
161 NO MAXVALUE
162 CACHE 1
163);
164
165
166--
167-- Name: citizens; Type: TABLE; Schema: public; Owner: -
168--
169
170CREATE TABLE public.citizens (
171 species_id text NOT NULL,
172 name text NOT NULL,
173 id bigint NOT NULL,
174 home_tile_id bigint,
175 CONSTRAINT citizens_name_check CHECK (((0 < length(name)) AND (length(name) < 64)))
176);
177
178
179--
180-- Name: TABLE citizens; Type: COMMENT; Schema: public; Owner: -
181--
182
183COMMENT ON TABLE public.citizens IS 'Citizens that are loyal to a player. Citizens each correspond to some card.';
184
185
186--
187-- Name: field_citizens; Type: TABLE; Schema: public; Owner: -
188--
189
190CREATE TABLE public.field_citizens (
191 citizen_id bigint NOT NULL,
192 account_id public.citext NOT NULL,
193 field_id bigint NOT NULL,
194 grid_x integer NOT NULL,
195 grid_y integer NOT NULL
196);
197
198
199--
200-- Name: TABLE field_citizens; Type: COMMENT; Schema: public; Owner: -
201--
202
203COMMENT ON TABLE public.field_citizens IS 'Tracks the state of citizens currently deployed on the field.';
204
205
206--
207-- Name: field_tiles; Type: TABLE; Schema: public; Owner: -
208--
209
210CREATE TABLE public.field_tiles (
211 tile_id bigint NOT NULL,
212 account_id public.citext NOT NULL,
213 field_id bigint NOT NULL,
214 grid_x integer NOT NULL,
215 grid_y integer NOT NULL
216);
217
218
219--
220-- Name: TABLE field_tiles; Type: COMMENT; Schema: public; Owner: -
221--
222
223COMMENT ON TABLE public.field_tiles IS 'Tile cards that have been played onto a field.';
224
225
226--
227-- Name: fields; Type: TABLE; Schema: public; Owner: -
228--
229
230CREATE TABLE public.fields (
231 id bigint NOT NULL,
232 name text NOT NULL,
233 account_id public.citext NOT NULL,
234 CONSTRAINT fields_name_check CHECK (((0 < length(name)) AND (length(name) <= 64)))
235);
236
237
238--
239-- Name: TABLE fields; Type: COMMENT; Schema: public; Owner: -
240--
241
242COMMENT ON TABLE public.fields IS 'Every card is played onto a field. An account may have multiple fields, but likely only has one.';
243
244
245--
246-- Name: fields_id_seq; Type: SEQUENCE; Schema: public; Owner: -
247--
248
249ALTER TABLE public.fields ALTER COLUMN id ADD GENERATED ALWAYS AS IDENTITY (
250 SEQUENCE NAME public.fields_id_seq
251 START WITH 1
252 INCREMENT BY 1
253 NO MINVALUE
254 NO MAXVALUE
255 CACHE 1
256);
257
258
259--
260-- Name: pack_banner_cards; Type: TABLE; Schema: public; Owner: -
261--
262
263CREATE TABLE public.pack_banner_cards (
264 pack_banner_id text NOT NULL,
265 card_type_id text NOT NULL,
266 frequency integer NOT NULL,
267 CONSTRAINT pack_banner_cards_frequency_check CHECK ((frequency > 0))
268);
269
270
271--
272-- Name: TABLE pack_banner_cards; Type: COMMENT; Schema: public; Owner: -
273--
274
275COMMENT ON TABLE public.pack_banner_cards IS 'Lists relative frequencies of cards available to be pulled from each banner.';
276
277
278--
279-- Name: pack_banners; Type: TABLE; Schema: public; Owner: -
280--
281
282CREATE TABLE public.pack_banners (
283 id text NOT NULL,
284 start_date timestamp with time zone NOT NULL,
285 end_date timestamp with time zone,
286 pack_size integer DEFAULT 5 NOT NULL,
287 CONSTRAINT pack_banners_id_check CHECK (((0 < length(id)) AND (length(id) <= 64)))
288);
289
290
291--
292-- Name: TABLE pack_banners; Type: COMMENT; Schema: public; Owner: -
293--
294
295COMMENT ON TABLE public.pack_banners IS 'Every pack that is opened is created using the template of some pack banner.';
296
297
298--
299-- Name: pack_contents; Type: TABLE; Schema: public; Owner: -
300--
301
302CREATE TABLE public.pack_contents (
303 pack_id bigint NOT NULL,
304 "position" integer NOT NULL,
305 card_id bigint NOT NULL
306);
307
308
309--
310-- Name: TABLE pack_contents; Type: COMMENT; Schema: public; Owner: -
311--
312
313COMMENT ON TABLE public.pack_contents IS 'Lists all cards that were part of each pack.';
314
315
316--
317-- Name: packs; Type: TABLE; Schema: public; Owner: -
318--
319
320CREATE TABLE public.packs (
321 id bigint NOT NULL,
322 account_id public.citext NOT NULL,
323 pack_banner_id text NOT NULL,
324 opened_at timestamp with time zone,
325 seed bigint NOT NULL,
326 algorithm text NOT NULL
327);
328
329
330--
331-- Name: TABLE packs; Type: COMMENT; Schema: public; Owner: -
332--
333
334COMMENT ON TABLE public.packs IS 'A historical record of all packs opened by an account.';
335
336
337--
338-- Name: COLUMN packs.seed; Type: COMMENT; Schema: public; Owner: -
339--
340
341COMMENT ON COLUMN public.packs.seed IS 'The u64 seed used to generate this pack. It is cast to i64 and stored here; interpret as raw bytes not meaningful number.';
342
343
344--
345-- Name: COLUMN packs.algorithm; Type: COMMENT; Schema: public; Owner: -
346--
347
348COMMENT ON COLUMN public.packs.algorithm IS 'The seedable random number generation algorithm used to generate this pack.';
349
350
351--
352-- Name: packs_id_seq; Type: SEQUENCE; Schema: public; Owner: -
353--
354
355ALTER TABLE public.packs ALTER COLUMN id ADD GENERATED ALWAYS AS IDENTITY (
356 SEQUENCE NAME public.packs_id_seq
357 START WITH 1
358 INCREMENT BY 1
359 NO MINVALUE
360 NO MAXVALUE
361 CACHE 1
362);
363
364
365--
366-- Name: resources; Type: TABLE; Schema: public; Owner: -
367--
368
369CREATE TABLE public.resources (
370 id text NOT NULL,
371 CONSTRAINT resources_id_check CHECK (((0 < length(id)) AND (length(id) <= 64)))
372);
373
374
375--
376-- Name: TABLE resources; Type: COMMENT; Schema: public; Owner: -
377--
378
379COMMENT ON TABLE public.resources IS 'Definitions of all types of resources that exist in the game.';
380
381
382--
383-- Name: species; Type: TABLE; Schema: public; Owner: -
384--
385
386CREATE TABLE public.species (
387 id text NOT NULL,
388 class public.card_class GENERATED ALWAYS AS ('citizen'::public.card_class) STORED NOT NULL,
389 CONSTRAINT species_id_check CHECK (((0 < length(id)) AND (length(id) <= 64)))
390);
391
392
393--
394-- Name: TABLE species; Type: COMMENT; Schema: public; Owner: -
395--
396
397COMMENT ON TABLE public.species IS 'Definitions of all species of citizen that exist in the game.';
398
399
400--
401-- Name: species_needs; Type: TABLE; Schema: public; Owner: -
402--
403
404CREATE TABLE public.species_needs (
405 species_id text NOT NULL,
406 resource_id text NOT NULL,
407 quantity integer NOT NULL,
408 CONSTRAINT species_needs_quantity_check CHECK ((quantity > 0))
409);
410
411
412--
413-- Name: TABLE species_needs; Type: COMMENT; Schema: public; Owner: -
414--
415
416COMMENT ON TABLE public.species_needs IS 'The types of resources that this species needs to consume per day in order to be satisfied.';
417
418
419--
420-- Name: tile_type_consumes; Type: TABLE; Schema: public; Owner: -
421--
422
423CREATE TABLE public.tile_type_consumes (
424 tile_type_id text NOT NULL,
425 resource_id text NOT NULL,
426 quantity integer NOT NULL,
427 CONSTRAINT tile_type_consumes_quantity_check CHECK ((quantity > 0))
428);
429
430
431--
432-- Name: TABLE tile_type_consumes; Type: COMMENT; Schema: public; Owner: -
433--
434
435COMMENT ON TABLE public.tile_type_consumes IS 'The types of resources that are consumed by this tile type, to produce its outputs.';
436
437
438--
439-- Name: tile_type_produces; Type: TABLE; Schema: public; Owner: -
440--
441
442CREATE TABLE public.tile_type_produces (
443 tile_type_id text NOT NULL,
444 resource_id text NOT NULL,
445 quantity integer NOT NULL,
446 CONSTRAINT tile_type_produces_quantity_check CHECK ((quantity > 0))
447);
448
449
450--
451-- Name: TABLE tile_type_produces; Type: COMMENT; Schema: public; Owner: -
452--
453
454COMMENT ON TABLE public.tile_type_produces IS 'The types of resources that are produced by this tile type, if all its inputs are satisfied.';
455
456
457--
458-- Name: tile_types; Type: TABLE; Schema: public; Owner: -
459--
460
461CREATE TABLE public.tile_types (
462 id text NOT NULL,
463 class public.card_class GENERATED ALWAYS AS ('tile'::public.card_class) STORED NOT NULL,
464 category public.tile_category NOT NULL,
465 houses integer NOT NULL,
466 employs integer NOT NULL
467);
468
469
470--
471-- Name: TABLE tile_types; Type: COMMENT; Schema: public; Owner: -
472--
473
474COMMENT ON TABLE public.tile_types IS 'Contains additional information about card types that correspond to tiles.';
475
476
477--
478-- Name: tiles; Type: TABLE; Schema: public; Owner: -
479--
480
481CREATE TABLE public.tiles (
482 id bigint NOT NULL,
483 tile_type_id text NOT NULL,
484 name text NOT NULL,
485 CONSTRAINT tiles_name_check CHECK (((0 < length(name)) AND (length(name) <= 64)))
486);
487
488
489--
490-- Name: TABLE tiles; Type: COMMENT; Schema: public; Owner: -
491--
492
493COMMENT ON TABLE public.tiles IS 'Contains tile-specific information, corresponding to some card.';
494
495
496--
497-- Name: accounts accounts_pkey; Type: CONSTRAINT; Schema: public; Owner: -
498--
499
500ALTER TABLE ONLY public.accounts
501 ADD CONSTRAINT accounts_pkey PRIMARY KEY (id);
502
503
504--
505-- Name: card_accounts card_accounts_card_id_account_id_key; Type: CONSTRAINT; Schema: public; Owner: -
506--
507
508ALTER TABLE ONLY public.card_accounts
509 ADD CONSTRAINT card_accounts_card_id_account_id_key UNIQUE (card_id, account_id);
510
511
512--
513-- Name: card_accounts card_accounts_pkey; Type: CONSTRAINT; Schema: public; Owner: -
514--
515
516ALTER TABLE ONLY public.card_accounts
517 ADD CONSTRAINT card_accounts_pkey PRIMARY KEY (card_id);
518
519
520--
521-- Name: card_sets card_sets_pkey; Type: CONSTRAINT; Schema: public; Owner: -
522--
523
524ALTER TABLE ONLY public.card_sets
525 ADD CONSTRAINT card_sets_pkey PRIMARY KEY (id);
526
527
528--
529-- Name: card_types card_types_id_class_key; Type: CONSTRAINT; Schema: public; Owner: -
530--
531
532ALTER TABLE ONLY public.card_types
533 ADD CONSTRAINT card_types_id_class_key UNIQUE (id, class);
534
535
536--
537-- Name: card_types card_types_pkey; Type: CONSTRAINT; Schema: public; Owner: -
538--
539
540ALTER TABLE ONLY public.card_types
541 ADD CONSTRAINT card_types_pkey PRIMARY KEY (id);
542
543
544--
545-- Name: cards cards_id_card_type_id_key; Type: CONSTRAINT; Schema: public; Owner: -
546--
547
548ALTER TABLE ONLY public.cards
549 ADD CONSTRAINT cards_id_card_type_id_key UNIQUE (id, card_type_id);
550
551
552--
553-- Name: cards cards_pkey; Type: CONSTRAINT; Schema: public; Owner: -
554--
555
556ALTER TABLE ONLY public.cards
557 ADD CONSTRAINT cards_pkey PRIMARY KEY (id);
558
559
560--
561-- Name: citizens citizens_pkey; Type: CONSTRAINT; Schema: public; Owner: -
562--
563
564ALTER TABLE ONLY public.citizens
565 ADD CONSTRAINT citizens_pkey PRIMARY KEY (id);
566
567
568--
569-- Name: field_citizens field_citizens_pkey; Type: CONSTRAINT; Schema: public; Owner: -
570--
571
572ALTER TABLE ONLY public.field_citizens
573 ADD CONSTRAINT field_citizens_pkey PRIMARY KEY (citizen_id);
574
575
576--
577-- Name: field_tiles field_tiles_pkey; Type: CONSTRAINT; Schema: public; Owner: -
578--
579
580ALTER TABLE ONLY public.field_tiles
581 ADD CONSTRAINT field_tiles_pkey PRIMARY KEY (tile_id);
582
583
584--
585-- Name: fields fields_id_account_id_key; Type: CONSTRAINT; Schema: public; Owner: -
586--
587
588ALTER TABLE ONLY public.fields
589 ADD CONSTRAINT fields_id_account_id_key UNIQUE (id, account_id);
590
591
592--
593-- Name: fields fields_pkey; Type: CONSTRAINT; Schema: public; Owner: -
594--
595
596ALTER TABLE ONLY public.fields
597 ADD CONSTRAINT fields_pkey PRIMARY KEY (id);
598
599
600--
601-- Name: pack_banner_cards pack_banner_cards_pkey; Type: CONSTRAINT; Schema: public; Owner: -
602--
603
604ALTER TABLE ONLY public.pack_banner_cards
605 ADD CONSTRAINT pack_banner_cards_pkey PRIMARY KEY (pack_banner_id, card_type_id);
606
607
608--
609-- Name: pack_banners pack_banners_pkey; Type: CONSTRAINT; Schema: public; Owner: -
610--
611
612ALTER TABLE ONLY public.pack_banners
613 ADD CONSTRAINT pack_banners_pkey PRIMARY KEY (id);
614
615
616--
617-- Name: pack_contents pack_contents_pkey; Type: CONSTRAINT; Schema: public; Owner: -
618--
619
620ALTER TABLE ONLY public.pack_contents
621 ADD CONSTRAINT pack_contents_pkey PRIMARY KEY (pack_id, "position");
622
623
624--
625-- Name: packs packs_pkey; Type: CONSTRAINT; Schema: public; Owner: -
626--
627
628ALTER TABLE ONLY public.packs
629 ADD CONSTRAINT packs_pkey PRIMARY KEY (id);
630
631
632--
633-- Name: resources resources_pkey; Type: CONSTRAINT; Schema: public; Owner: -
634--
635
636ALTER TABLE ONLY public.resources
637 ADD CONSTRAINT resources_pkey PRIMARY KEY (id);
638
639
640--
641-- Name: species_needs species_needs_pkey; Type: CONSTRAINT; Schema: public; Owner: -
642--
643
644ALTER TABLE ONLY public.species_needs
645 ADD CONSTRAINT species_needs_pkey PRIMARY KEY (species_id, resource_id);
646
647
648--
649-- Name: species species_pkey; Type: CONSTRAINT; Schema: public; Owner: -
650--
651
652ALTER TABLE ONLY public.species
653 ADD CONSTRAINT species_pkey PRIMARY KEY (id);
654
655
656--
657-- Name: tile_type_consumes tile_type_consumes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
658--
659
660ALTER TABLE ONLY public.tile_type_consumes
661 ADD CONSTRAINT tile_type_consumes_pkey PRIMARY KEY (tile_type_id, resource_id);
662
663
664--
665-- Name: tile_type_produces tile_type_produces_pkey; Type: CONSTRAINT; Schema: public; Owner: -
666--
667
668ALTER TABLE ONLY public.tile_type_produces
669 ADD CONSTRAINT tile_type_produces_pkey PRIMARY KEY (tile_type_id, resource_id);
670
671
672--
673-- Name: tile_types tile_types_pkey; Type: CONSTRAINT; Schema: public; Owner: -
674--
675
676ALTER TABLE ONLY public.tile_types
677 ADD CONSTRAINT tile_types_pkey PRIMARY KEY (id);
678
679
680--
681-- Name: tiles tiles_pkey; Type: CONSTRAINT; Schema: public; Owner: -
682--
683
684ALTER TABLE ONLY public.tiles
685 ADD CONSTRAINT tiles_pkey PRIMARY KEY (id);
686
687
688--
689-- Name: card_accounts_account_id_index; Type: INDEX; Schema: public; Owner: -
690--
691
692CREATE INDEX card_accounts_account_id_index ON public.card_accounts USING btree (account_id);
693
694
695--
696-- Name: card_accounts card_accounts_account_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
697--
698
699ALTER TABLE ONLY public.card_accounts
700 ADD CONSTRAINT card_accounts_account_id_fkey FOREIGN KEY (account_id) REFERENCES public.accounts(id) ON UPDATE CASCADE ON DELETE CASCADE;
701
702
703--
704-- Name: card_accounts card_accounts_card_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
705--
706
707ALTER TABLE ONLY public.card_accounts
708 ADD CONSTRAINT card_accounts_card_id_fkey FOREIGN KEY (card_id) REFERENCES public.cards(id) ON UPDATE CASCADE ON DELETE CASCADE;
709
710
711--
712-- Name: card_types card_types_card_set_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
713--
714
715ALTER TABLE ONLY public.card_types
716 ADD CONSTRAINT card_types_card_set_id_fkey FOREIGN KEY (card_set_id) REFERENCES public.card_sets(id) ON UPDATE CASCADE ON DELETE RESTRICT;
717
718
719--
720-- Name: cards cards_card_type_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
721--
722
723ALTER TABLE ONLY public.cards
724 ADD CONSTRAINT cards_card_type_id_fkey FOREIGN KEY (card_type_id) REFERENCES public.card_types(id) ON UPDATE CASCADE ON DELETE RESTRICT;
725
726
727--
728-- Name: citizens citizens_home_tile_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
729--
730
731ALTER TABLE ONLY public.citizens
732 ADD CONSTRAINT citizens_home_tile_id_fkey FOREIGN KEY (home_tile_id) REFERENCES public.tiles(id) ON UPDATE CASCADE ON DELETE SET NULL;
733
734
735--
736-- Name: citizens citizens_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
737--
738
739ALTER TABLE ONLY public.citizens
740 ADD CONSTRAINT citizens_id_fkey FOREIGN KEY (id) REFERENCES public.cards(id) ON UPDATE CASCADE ON DELETE CASCADE;
741
742
743--
744-- Name: citizens citizens_id_species_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
745--
746
747ALTER TABLE ONLY public.citizens
748 ADD CONSTRAINT citizens_id_species_id_fkey FOREIGN KEY (id, species_id) REFERENCES public.cards(id, card_type_id) ON UPDATE CASCADE ON DELETE CASCADE;
749
750
751--
752-- Name: citizens citizens_species_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
753--
754
755ALTER TABLE ONLY public.citizens
756 ADD CONSTRAINT citizens_species_id_fkey FOREIGN KEY (species_id) REFERENCES public.species(id) ON UPDATE CASCADE ON DELETE CASCADE;
757
758
759--
760-- Name: field_citizens field_citizens_account_id_citizen_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
761--
762
763ALTER TABLE ONLY public.field_citizens
764 ADD CONSTRAINT field_citizens_account_id_citizen_id_fkey FOREIGN KEY (account_id, citizen_id) REFERENCES public.card_accounts(account_id, card_id) ON UPDATE CASCADE ON DELETE CASCADE;
765
766
767--
768-- Name: field_citizens field_citizens_account_id_field_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
769--
770
771ALTER TABLE ONLY public.field_citizens
772 ADD CONSTRAINT field_citizens_account_id_field_id_fkey FOREIGN KEY (account_id, field_id) REFERENCES public.fields(account_id, id) ON UPDATE CASCADE ON DELETE CASCADE;
773
774
775--
776-- Name: field_citizens field_citizens_account_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
777--
778
779ALTER TABLE ONLY public.field_citizens
780 ADD CONSTRAINT field_citizens_account_id_fkey FOREIGN KEY (account_id) REFERENCES public.accounts(id) ON UPDATE CASCADE ON DELETE CASCADE;
781
782
783--
784-- Name: field_citizens field_citizens_citizen_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
785--
786
787ALTER TABLE ONLY public.field_citizens
788 ADD CONSTRAINT field_citizens_citizen_id_fkey FOREIGN KEY (citizen_id) REFERENCES public.citizens(id) ON UPDATE CASCADE ON DELETE CASCADE;
789
790
791--
792-- Name: field_citizens field_citizens_field_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
793--
794
795ALTER TABLE ONLY public.field_citizens
796 ADD CONSTRAINT field_citizens_field_id_fkey FOREIGN KEY (field_id) REFERENCES public.fields(id) ON UPDATE CASCADE ON DELETE CASCADE;
797
798
799--
800-- Name: field_tiles field_tiles_account_id_field_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
801--
802
803ALTER TABLE ONLY public.field_tiles
804 ADD CONSTRAINT field_tiles_account_id_field_id_fkey FOREIGN KEY (account_id, field_id) REFERENCES public.fields(account_id, id) ON UPDATE CASCADE ON DELETE CASCADE;
805
806
807--
808-- Name: field_tiles field_tiles_account_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
809--
810
811ALTER TABLE ONLY public.field_tiles
812 ADD CONSTRAINT field_tiles_account_id_fkey FOREIGN KEY (account_id) REFERENCES public.accounts(id) ON UPDATE CASCADE ON DELETE CASCADE;
813
814
815--
816-- Name: field_tiles field_tiles_account_id_tile_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
817--
818
819ALTER TABLE ONLY public.field_tiles
820 ADD CONSTRAINT field_tiles_account_id_tile_id_fkey FOREIGN KEY (account_id, tile_id) REFERENCES public.card_accounts(account_id, card_id) ON UPDATE CASCADE ON DELETE CASCADE;
821
822
823--
824-- Name: field_tiles field_tiles_field_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
825--
826
827ALTER TABLE ONLY public.field_tiles
828 ADD CONSTRAINT field_tiles_field_id_fkey FOREIGN KEY (field_id) REFERENCES public.fields(id) ON UPDATE CASCADE ON DELETE CASCADE;
829
830
831--
832-- Name: field_tiles field_tiles_tile_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
833--
834
835ALTER TABLE ONLY public.field_tiles
836 ADD CONSTRAINT field_tiles_tile_id_fkey FOREIGN KEY (tile_id) REFERENCES public.tiles(id) ON UPDATE CASCADE ON DELETE CASCADE;
837
838
839--
840-- Name: fields fields_account_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
841--
842
843ALTER TABLE ONLY public.fields
844 ADD CONSTRAINT fields_account_id_fkey FOREIGN KEY (account_id) REFERENCES public.accounts(id) ON UPDATE CASCADE ON DELETE CASCADE;
845
846
847--
848-- Name: pack_banner_cards pack_banner_cards_card_type_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
849--
850
851ALTER TABLE ONLY public.pack_banner_cards
852 ADD CONSTRAINT pack_banner_cards_card_type_id_fkey FOREIGN KEY (card_type_id) REFERENCES public.card_types(id) ON UPDATE CASCADE ON DELETE RESTRICT;
853
854
855--
856-- Name: pack_banner_cards pack_banner_cards_pack_banner_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
857--
858
859ALTER TABLE ONLY public.pack_banner_cards
860 ADD CONSTRAINT pack_banner_cards_pack_banner_id_fkey FOREIGN KEY (pack_banner_id) REFERENCES public.pack_banners(id) ON UPDATE CASCADE ON DELETE CASCADE;
861
862
863--
864-- Name: pack_contents pack_contents_card_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
865--
866
867ALTER TABLE ONLY public.pack_contents
868 ADD CONSTRAINT pack_contents_card_id_fkey FOREIGN KEY (card_id) REFERENCES public.cards(id) ON UPDATE CASCADE ON DELETE CASCADE;
869
870
871--
872-- Name: pack_contents pack_contents_pack_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
873--
874
875ALTER TABLE ONLY public.pack_contents
876 ADD CONSTRAINT pack_contents_pack_id_fkey FOREIGN KEY (pack_id) REFERENCES public.packs(id) ON UPDATE CASCADE ON DELETE CASCADE;
877
878
879--
880-- Name: packs packs_account_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
881--
882
883ALTER TABLE ONLY public.packs
884 ADD CONSTRAINT packs_account_id_fkey FOREIGN KEY (account_id) REFERENCES public.accounts(id) ON UPDATE CASCADE ON DELETE CASCADE;
885
886
887--
888-- Name: packs packs_pack_banner_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
889--
890
891ALTER TABLE ONLY public.packs
892 ADD CONSTRAINT packs_pack_banner_id_fkey FOREIGN KEY (pack_banner_id) REFERENCES public.pack_banners(id) ON UPDATE CASCADE ON DELETE RESTRICT;
893
894
895--
896-- Name: species species_id_class_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
897--
898
899ALTER TABLE ONLY public.species
900 ADD CONSTRAINT species_id_class_fkey FOREIGN KEY (id, class) REFERENCES public.card_types(id, class) ON UPDATE RESTRICT ON DELETE CASCADE;
901
902
903--
904-- Name: species species_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
905--
906
907ALTER TABLE ONLY public.species
908 ADD CONSTRAINT species_id_fkey FOREIGN KEY (id) REFERENCES public.card_types(id) ON UPDATE CASCADE ON DELETE CASCADE;
909
910
911--
912-- Name: species_needs species_needs_resource_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
913--
914
915ALTER TABLE ONLY public.species_needs
916 ADD CONSTRAINT species_needs_resource_id_fkey FOREIGN KEY (resource_id) REFERENCES public.resources(id) ON UPDATE CASCADE ON DELETE RESTRICT;
917
918
919--
920-- Name: species_needs species_needs_species_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
921--
922
923ALTER TABLE ONLY public.species_needs
924 ADD CONSTRAINT species_needs_species_id_fkey FOREIGN KEY (species_id) REFERENCES public.species(id) ON UPDATE CASCADE ON DELETE CASCADE;
925
926
927--
928-- Name: tile_type_consumes tile_type_consumes_resource_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
929--
930
931ALTER TABLE ONLY public.tile_type_consumes
932 ADD CONSTRAINT tile_type_consumes_resource_id_fkey FOREIGN KEY (resource_id) REFERENCES public.resources(id) ON UPDATE CASCADE ON DELETE RESTRICT;
933
934
935--
936-- Name: tile_type_consumes tile_type_consumes_tile_type_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
937--
938
939ALTER TABLE ONLY public.tile_type_consumes
940 ADD CONSTRAINT tile_type_consumes_tile_type_id_fkey FOREIGN KEY (tile_type_id) REFERENCES public.tile_types(id) ON UPDATE CASCADE ON DELETE CASCADE;
941
942
943--
944-- Name: tile_type_produces tile_type_produces_resource_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
945--
946
947ALTER TABLE ONLY public.tile_type_produces
948 ADD CONSTRAINT tile_type_produces_resource_id_fkey FOREIGN KEY (resource_id) REFERENCES public.resources(id) ON UPDATE CASCADE ON DELETE RESTRICT;
949
950
951--
952-- Name: tile_type_produces tile_type_produces_tile_type_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
953--
954
955ALTER TABLE ONLY public.tile_type_produces
956 ADD CONSTRAINT tile_type_produces_tile_type_id_fkey FOREIGN KEY (tile_type_id) REFERENCES public.tile_types(id) ON UPDATE CASCADE ON DELETE CASCADE;
957
958
959--
960-- Name: tile_types tile_types_id_class_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
961--
962
963ALTER TABLE ONLY public.tile_types
964 ADD CONSTRAINT tile_types_id_class_fkey FOREIGN KEY (id, class) REFERENCES public.card_types(id, class) ON UPDATE RESTRICT ON DELETE CASCADE;
965
966
967--
968-- Name: tile_types tile_types_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
969--
970
971ALTER TABLE ONLY public.tile_types
972 ADD CONSTRAINT tile_types_id_fkey FOREIGN KEY (id) REFERENCES public.card_types(id) ON UPDATE CASCADE ON DELETE CASCADE;
973
974
975--
976-- Name: tiles tiles_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
977--
978
979ALTER TABLE ONLY public.tiles
980 ADD CONSTRAINT tiles_id_fkey FOREIGN KEY (id) REFERENCES public.cards(id) ON UPDATE CASCADE ON DELETE CASCADE;
981
982
983--
984-- Name: tiles tiles_id_tile_type_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
985--
986
987ALTER TABLE ONLY public.tiles
988 ADD CONSTRAINT tiles_id_tile_type_id_fkey FOREIGN KEY (id, tile_type_id) REFERENCES public.cards(id, card_type_id) ON UPDATE CASCADE ON DELETE CASCADE;
989
990
991--
992-- Name: tiles tiles_tile_type_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
993--
994
995ALTER TABLE ONLY public.tiles
996 ADD CONSTRAINT tiles_tile_type_id_fkey FOREIGN KEY (tile_type_id) REFERENCES public.tile_types(id) ON UPDATE CASCADE ON DELETE RESTRICT;
997
998
999--
1000-- PostgreSQL database dump complete
1001--
1002
1003\unrestrict aa4b4bc410c5cacbd97fc326d0f62806
1004