HSAdmin Backend Domains, E-Mail, Datenbanken
Peter Hormanns
2013-05-11 0b888d2a736b1b307da7bb412fc4beb151af0173
commit | author | age
13151e 1 --
PH 2 -- Name: bank_account; Type: TABLE; Schema: public; Owner: -; Tablespace: 
3 --
4
5 CREATE TABLE bank_account (
6     bank_account_id integer DEFAULT nextval(('"bank_account_bank_account_id_seq"'::text)::regclass) NOT NULL,
7     bp_id integer NOT NULL,
8d2214 8     autodebit_ga boolean NOT NULL,
PH 9     autodebit_ar boolean NOT NULL,
10     autodebit_op boolean NOT NULL,
11     bank_customer character varying(50),
12     bank_account character varying(10),
13     bank_code character varying(8),
14     bank_name character varying(50),
15     CONSTRAINT ckt_bank_account CHECK (((((((bank_customer IS NOT NULL) AND (bank_account IS NOT NULL)) AND (bank_code IS NOT NULL)) AND (bank_name IS NOT NULL)) AND (((autodebit_ga = true) OR (autodebit_ar = true)) OR (autodebit_op = true))) OR (((autodebit_ga = false) AND (autodebit_ar = false)) AND (autodebit_op = false))))
13151e 16 );
PH 17
18
19 --
20 -- Name: bank_account_bank_account_id_seq; Type: SEQUENCE; Schema: public; Owner: -
21 --
22
23 CREATE SEQUENCE bank_account_bank_account_id_seq
24     INCREMENT BY 1
25     NO MAXVALUE
26     NO MINVALUE
27     CACHE 1;
28
29
30 --
31 -- Name: basecomponent; Type: TABLE; Schema: public; Owner: -; Tablespace: 
32 --
33
34 CREATE TABLE basecomponent (
35     basecomponent_id integer DEFAULT nextval(('"basecomponent_basecomponent_seq"'::text)::regclass) NOT NULL,
36     basecomponent_code character varying(10) NOT NULL,
37     description character varying(100) NOT NULL,
38     sorting integer NOT NULL,
39     valid boolean NOT NULL
40 );
41
42
43 --
44 -- Name: basecomponent_basecomponent_seq; Type: SEQUENCE; Schema: public; Owner: -
45 --
46
47 CREATE SEQUENCE basecomponent_basecomponent_seq
48     INCREMENT BY 1
49     NO MAXVALUE
50     NO MINVALUE
51     CACHE 1;
52
53
54 --
55 -- Name: basepacket; Type: TABLE; Schema: public; Owner: -; Tablespace: 
56 --
57
58 CREATE TABLE basepacket (
59     basepacket_id integer DEFAULT nextval(('"basepacket_basepacket_id_seq"'::text)::regclass) NOT NULL,
60     basepacket_code character varying(10) NOT NULL,
61     description character varying(100) NOT NULL,
f32fd2 62     article_number integer NOT NULL,
13151e 63     sorting integer NOT NULL,
PH 64     valid boolean NOT NULL
65 );
66
67
68 --
69 -- Name: basepacket_basepacket_id_seq; Type: SEQUENCE; Schema: public; Owner: -
70 --
71
72 CREATE SEQUENCE basepacket_basepacket_id_seq
73     INCREMENT BY 1
74     NO MAXVALUE
75     NO MINVALUE
76     CACHE 1;
77
78
79 --
80 -- Name: business_partner; Type: TABLE; Schema: public; Owner: -; Tablespace: 
81 --
82
83 CREATE TABLE business_partner (
84     bp_id integer DEFAULT nextval(('"business_partner_bp_id_seq"'::text)::regclass) NOT NULL,
85     member_id integer NOT NULL,
86     member_code character varying(20) NOT NULL,
87     member_since date,
88     member_until date,
89     member_role character varying(100),
90     author_contract date,
91     nondisc_contract date,
92     shares_updated date,
93     shares_signed integer NOT NULL,
94     uid_vat character varying(20),
d1da05 95     free boolean NOT NULL,
054f38 96     indicator_vat character varying(20) NOT NULL,
aa82ca 97     exempt_vat boolean NOT NULL,
13151e 98     CONSTRAINT ckc_member_id_business CHECK (((member_id >= 10000) AND (member_id <= 99999))),
PH 99     CONSTRAINT ckc_shares_signed_business CHECK ((shares_signed >= 0)),
f572d9 100     CONSTRAINT ckt_business_partner CHECK ( ( ((member_since IS NULL) AND (member_until IS NULL)) OR ((member_since IS NOT NULL) AND (member_until IS NULL)) OR ((member_since IS NOT NULL) AND (member_until IS NOT NULL) AND (member_since < member_until)) ) AND ((member_code)::text ~~ 'hsh00-%'::text)),
PH 101     UNIQUE (bp_id)
13151e 102 );
PH 103
104
105 --
106 -- Name: business_partner_bp_id_seq; Type: SEQUENCE; Schema: public; Owner: -
107 --
108
109 CREATE SEQUENCE business_partner_bp_id_seq
110     INCREMENT BY 1
111     NO MAXVALUE
112     NO MINVALUE
113     CACHE 1;
114
115
116 --
117 -- Name: component; Type: TABLE; Schema: public; Owner: -; Tablespace: 
118 --
119
120 CREATE TABLE component (
121     basepacket_id integer NOT NULL,
122     basecomponent_id integer NOT NULL,
f32fd2 123     article_number integer NOT NULL,
13151e 124     min_quantity integer NOT NULL,
PH 125     max_quantity integer NOT NULL,
126     default_quantity integer NOT NULL,
127     increment_quantity integer NOT NULL,
128     include_quantity integer NOT NULL,
129     admin_only boolean NOT NULL,
d45079 130     CONSTRAINT ckt_component CHECK (
8d2214 131         (0 <= min_quantity) AND 
d45079 132         (min_quantity <= default_quantity) AND 
PH 133         (default_quantity <= max_quantity) AND 
8d2214 134         (include_quantity <= default_quantity) AND 
PH 135         (0 <= include_quantity) AND 
136         (mod(min_quantity, increment_quantity) = 0) AND 
d45079 137         (mod(max_quantity, increment_quantity) = 0) AND 
PH 138         (mod(default_quantity, increment_quantity) = 0) AND 
139         (mod(include_quantity, increment_quantity) = 0)
140     )
13151e 141 );
PH 142
143
144 --
145 -- Name: contact; Type: TABLE; Schema: public; Owner: -; Tablespace: 
146 --
147
148 CREATE TABLE contact (
149     contact_id integer DEFAULT nextval(('"contact_contact_id_seq"'::text)::regclass) NOT NULL,
150     bp_id integer NOT NULL,
151     salut character varying(30),
152     first_name character varying(40) NOT NULL,
153     last_name character varying(40) NOT NULL,
154     title character varying(20),
155     firma character varying(120),
156     co character varying(50),
157     street character varying(50),
158     zipcode character varying(10),
159     city character varying(40),
160     country character varying(30),
161     phone_private character varying(30),
162     phone_office character varying(30),
163     phone_mobile character varying(30),
164     fax character varying(30),
165     email character varying(100) NOT NULL,
166     CONSTRAINT ckc_email_contact CHECK (((email)::text ~~ '%@%.%'::text))
167 );
168
169
170 --
171 -- Name: contact_contact_id_seq; Type: SEQUENCE; Schema: public; Owner: -
172 --
173
174 CREATE SEQUENCE contact_contact_id_seq
175     INCREMENT BY 1
176     NO MAXVALUE
177     NO MINVALUE
178     CACHE 1;
179
180
181 --
f32fd2 182 -- Name: price_list
PH 183 --
184
185 CREATE TABLE price_list (
186     id serial primary key,                                                                   
187     name character varying(20)
188 );       
189
190
191 --
192 -- Name: customer_price_list_mapping
193 --
194
195 CREATE TABLE customer_price_list_mapping (
196     customer integer references business_partner(bp_id),
197     price_list integer references price_list(id)
198 );
199
200
201 --
202 -- Name: price
203 --
204
205 CREATE TABLE price (                                                                
206     id serial primary key,
207     article_number integer NOT NULL,
208     price decimal(10, 2) NOT NULL,
209     vat decimal(4,2) NOT NULL,
210     price_list integer references price_list(id)                                             
211 );
212
213 --
13151e 214 -- Name: database_database_id_seq; Type: SEQUENCE; Schema: public; Owner: -
PH 215 --
216
217 CREATE SEQUENCE database_database_id_seq
218     INCREMENT BY 1
219     NO MAXVALUE
220     NO MINVALUE
221     CACHE 1;
222
223
224 --
225 -- Name: database; Type: TABLE; Schema: public; Owner: -; Tablespace: 
226 --
227
228 CREATE TABLE database (
229     database_id integer DEFAULT nextval('database_database_id_seq'::regclass) NOT NULL,
230     engine character varying(12) NOT NULL,
231     packet_id integer NOT NULL,
232     name character varying(64) NOT NULL,
233     owner character varying(24) NOT NULL,
234     encoding character varying(12) NOT NULL
235 );
236
237
238 --
239 -- Name: dbuser_dbuser_id_seq; Type: SEQUENCE; Schema: public; Owner: -
240 --
241
242 CREATE SEQUENCE dbuser_dbuser_id_seq
243     INCREMENT BY 1
244     NO MAXVALUE
245     NO MINVALUE
246     CACHE 1;
247
248
249 --
250 -- Name: database_user; Type: TABLE; Schema: public; Owner: -; Tablespace: 
251 --
252
253 CREATE TABLE database_user (
254     dbuser_id integer DEFAULT nextval('dbuser_dbuser_id_seq'::regclass) NOT NULL,
255     engine character varying(12) NOT NULL,
256     packet_id integer NOT NULL,
257     name character varying(64) NOT NULL
258 );
259
260
261 --
262 -- Name: domain_domain_id_seq; Type: SEQUENCE; Schema: public; Owner: -
263 --
264
265 CREATE SEQUENCE domain_domain_id_seq
266     INCREMENT BY 1
267     NO MAXVALUE
268     NO MINVALUE
269     CACHE 1;
270
271
272 --
273 -- Name: domain; Type: TABLE; Schema: public; Owner: -; Tablespace: 
274 --
275
276 CREATE TABLE domain (
277     domain_name character varying(256) NOT NULL,
278     domain_since date,
279     domain_dns_master character varying(64),
280     domain_id integer DEFAULT nextval('domain_domain_id_seq'::regclass) NOT NULL,
ba1d52 281     domain_owner integer NOT NULL
13151e 282 );
PH 283
284
285 --
286 -- Name: emailaddr_emailaddr_id_seq; Type: SEQUENCE; Schema: public; Owner: -
287 --
288
289 CREATE SEQUENCE emailaddr_emailaddr_id_seq
290     INCREMENT BY 1
291     NO MAXVALUE
292     NO MINVALUE
293     CACHE 1;
294
295
296 --
297 -- Name: emailaddr; Type: TABLE; Schema: public; Owner: -; Tablespace: 
298 --
299
300 CREATE TABLE emailaddr (
301     emailaddr_id integer DEFAULT nextval('emailaddr_emailaddr_id_seq'::regclass) NOT NULL,
302     localpart character varying(64) NOT NULL,
303     domain_id integer NOT NULL,
304     target text,
305     subdomain character varying(64)
306 );
307
308
309 --
310 -- Name: emailalias_emailalias_id_seq; Type: SEQUENCE; Schema: public; Owner: -
311 --
312
313 CREATE SEQUENCE emailalias_emailalias_id_seq
314     INCREMENT BY 1
315     NO MAXVALUE
316     NO MINVALUE
317     CACHE 1;
318
319
320 --
321 -- Name: emailalias; Type: TABLE; Schema: public; Owner: -; Tablespace: 
322 --
323
324 CREATE TABLE emailalias (
325     emailalias_id integer DEFAULT nextval('emailalias_emailalias_id_seq'::regclass) NOT NULL,
326     pac_id integer NOT NULL,
327     target text NOT NULL,
328     name character varying(96) NOT NULL
329 );
330
331
332 --
333 -- Name: hive; Type: TABLE; Schema: public; Owner: -; Tablespace: 
334 --
335
336 CREATE TABLE hive (
337     hive_id integer DEFAULT nextval(('"hive_hive_id_seq"'::text)::regclass) NOT NULL,
338     hive_name character varying(3) NOT NULL,
339     inet_addr_id integer NOT NULL,
340     description character varying(100)
341 );
342
343
344 --
345 -- Name: hive_hive_id_seq; Type: SEQUENCE; Schema: public; Owner: -
346 --
347
348 CREATE SEQUENCE hive_hive_id_seq
349     INCREMENT BY 1
350     NO MAXVALUE
351     NO MINVALUE
352     CACHE 1;
353
354
355 --
356 -- Name: inet_addr; Type: TABLE; Schema: public; Owner: -; Tablespace: 
357 --
358
359 CREATE TABLE inet_addr (
360     inet_addr_id integer DEFAULT nextval(('"inet_addr_inet_addr_id_seq"'::text)::regclass) NOT NULL,
361     inet_addr inet NOT NULL,
362     description character varying(100),
363     CONSTRAINT ckc_inet_addr_inet_add CHECK ((masklen(inet_addr) = 32))
364 );
365
366
367 --
368 -- Name: inet_addr_inet_addr_id_seq; Type: SEQUENCE; Schema: public; Owner: -
369 --
370
371 CREATE SEQUENCE inet_addr_inet_addr_id_seq
372     INCREMENT BY 1
373     NO MAXVALUE
374     NO MINVALUE
375     CACHE 1;
376
377
378 --
379 -- Name: packet; Type: TABLE; Schema: public; Owner: -; Tablespace: 
380 --
381
382 CREATE TABLE packet (
383     packet_id integer DEFAULT nextval(('"packet_packet_id_seq"'::text)::regclass) NOT NULL,
384     packet_name character varying(5) NOT NULL,
385     bp_id integer NOT NULL,
386     hive_id integer NOT NULL,
387     created date NOT NULL,
388     cancelled date,
25058b 389     free boolean NOT NULL,
13151e 390     cur_inet_addr_id integer,
PH 391     old_inet_addr_id integer,
392     CONSTRAINT ckt_packet CHECK (((cancelled IS NULL) OR (cancelled > created)))
393 );
394
395
396 --
397 -- Name: packet_packet_id_seq; Type: SEQUENCE; Schema: public; Owner: -
398 --
399
400 CREATE SEQUENCE packet_packet_id_seq
401     INCREMENT BY 1
402     NO MAXVALUE
403     NO MINVALUE
404     CACHE 1;
405
406
0b888d 407 --
PH 408 -- Name: packet_component; Type: TABLE; Schema: public; Owner: -; Tablespace: 
409 --
410
411 CREATE TABLE packet_component (
412     basepacket_id integer NOT NULL,  -- move to packet
413     basecomponent_id integer NOT NULL,
414     packet_id integer NOT NULL,
415     quantity integer NOT NULL,
416     created date,
417     cancelled date,
418     CONSTRAINT ckt_packet_component CHECK (((cancelled IS NULL) OR (cancelled > created)))
419 );
420
13151e 421
PH 422 --
423 -- Name: queue_task; Type: TABLE; Schema: public; Owner: -; Tablespace: 
424 --
425
426 CREATE TABLE queue_task (
427     task_id integer DEFAULT nextval(('"queue_task_id_seq"'::text)::regclass) NOT NULL,
428     proc bytea,
429     exception text,
430     started timestamp without time zone NOT NULL,
431     finished timestamp without time zone,
432     title character varying(192),
433     details text,
434     user_id integer
435 );
436
437
438 --
439 -- Name: queue_task_id_seq; Type: SEQUENCE; Schema: public; Owner: -
440 --
441
442 CREATE SEQUENCE queue_task_id_seq
443     INCREMENT BY 1
444     NO MAXVALUE
445     NO MINVALUE
446     CACHE 1;
447
448
449 --
450 -- Name: unixuser_unixuser_id_seq; Type: SEQUENCE; Schema: public; Owner: -
451 --
452
453 CREATE SEQUENCE unixuser_unixuser_id_seq
454     INCREMENT BY 1
455     NO MAXVALUE
456     NO MINVALUE
457     CACHE 1;
458
459
460 --
461 -- Name: unixuser; Type: TABLE; Schema: public; Owner: -; Tablespace: 
462 --
463
464 CREATE TABLE unixuser (
465     unixuser_id integer DEFAULT nextval('unixuser_unixuser_id_seq'::regclass) NOT NULL,
466     name character varying(64) NOT NULL,
467     comment character varying(128),
468     shell character varying(64) NOT NULL,
469     homedir character varying(128) NOT NULL,
470     locked boolean NOT NULL,
471     packet_id integer NOT NULL,
472     quota_softlimit integer DEFAULT 0 NOT NULL,
473     userid integer NOT NULL,
474     quota_hardlimit integer DEFAULT 0,
475     CONSTRAINT unixuser_userid CHECK ((userid >= 10000))
476 );
477
478
479 --
480 -- Name: database_uniq; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
481 --
482
483 ALTER TABLE ONLY database
484     ADD CONSTRAINT database_uniq UNIQUE (engine, name);
485
486
487 --
488 -- Name: database_user_uniq; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
489 --
490
491 ALTER TABLE ONLY database_user
492     ADD CONSTRAINT database_user_uniq UNIQUE (engine, name);
493
494
495 --
496 -- Name: emailaddr_uniq; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
497 --
498
499 ALTER TABLE ONLY emailaddr
500     ADD CONSTRAINT emailaddr_uniq UNIQUE (localpart, subdomain, domain_id);
501
502
503 --
504 -- Name: emailalias_uniq; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
505 --
506
507 ALTER TABLE ONLY emailalias
508     ADD CONSTRAINT emailalias_uniq UNIQUE (name);
509
510
511 --
512 -- Name: pk_bank_account; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
513 --
514
515 ALTER TABLE ONLY bank_account
516     ADD CONSTRAINT pk_bank_account PRIMARY KEY (bank_account_id);
517
518
519 --
520 -- Name: pk_basecomponent; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
521 --
522
523 ALTER TABLE ONLY basecomponent
524     ADD CONSTRAINT pk_basecomponent PRIMARY KEY (basecomponent_id);
525
526
527 --
528 -- Name: pk_basepacket; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
529 --
530
531 ALTER TABLE ONLY basepacket
532     ADD CONSTRAINT pk_basepacket PRIMARY KEY (basepacket_id);
533
534
535 --
536 -- Name: pk_business_partner; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
537 --
538
539 ALTER TABLE ONLY business_partner
540     ADD CONSTRAINT pk_business_partner PRIMARY KEY (bp_id);
541
542
543 --
544 -- Name: pk_component; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
545 --
546
547 ALTER TABLE ONLY component
548     ADD CONSTRAINT pk_component PRIMARY KEY (basepacket_id, basecomponent_id);
549
550
551 --
552 -- Name: pk_contact; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
553 --
554
555 ALTER TABLE ONLY contact
556     ADD CONSTRAINT pk_contact PRIMARY KEY (contact_id);
557
558
559 --
560 -- Name: pk_database; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
561 --
562
563 ALTER TABLE ONLY database
564     ADD CONSTRAINT pk_database PRIMARY KEY (database_id);
565
566
567 --
568 -- Name: pk_database_user; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
569 --
570
571 ALTER TABLE ONLY database_user
572     ADD CONSTRAINT pk_database_user PRIMARY KEY (dbuser_id);
573
574
575 --
576 -- Name: pk_hive; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
577 --
578
579 ALTER TABLE ONLY hive
580     ADD CONSTRAINT pk_hive PRIMARY KEY (hive_id);
581
582
583 --
584 -- Name: pk_inet_addr; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
585 --
586
587 ALTER TABLE ONLY inet_addr
588     ADD CONSTRAINT pk_inet_addr PRIMARY KEY (inet_addr_id);
589
590
591 --
592 -- Name: pk_packet; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
593 --
594
595 ALTER TABLE ONLY packet
596     ADD CONSTRAINT pk_packet PRIMARY KEY (packet_id);
597
598
599 --
600 -- Name: pk_packet_component; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
601 --
602
603 ALTER TABLE ONLY packet_component
604     ADD CONSTRAINT pk_packet_component PRIMARY KEY (basepacket_id, basecomponent_id, packet_id);
605
606
607 --
608 -- Name: pk_unixuser; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
609 --
610
611 ALTER TABLE ONLY unixuser
612     ADD CONSTRAINT pk_unixuser PRIMARY KEY (unixuser_id);
613
614
615 --
616 -- Name: unixuser_name_key; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
617 --
618
619 ALTER TABLE ONLY unixuser
620     ADD CONSTRAINT unixuser_name_key UNIQUE (name);
621
622
623 --
624 -- Name: bank_account_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
625 --
626
627 CREATE INDEX bank_account_in_1 ON bank_account USING btree (bp_id);
628
629
630 --
631 -- Name: basecomponent_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
632 --
633
634 CREATE UNIQUE INDEX basecomponent_in_1 ON basecomponent USING btree (basecomponent_code);
635
636
637 --
638 -- Name: basepacket_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
639 --
640
641 CREATE UNIQUE INDEX basepacket_in_1 ON basepacket USING btree (basepacket_code);
642
643
644 --
645 -- Name: component_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
646 --
647
648 CREATE INDEX component_in_1 ON component USING btree (basecomponent_id);
649
650
651 --
652 -- Name: contact_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
653 --
654
655 CREATE INDEX contact_in_1 ON contact USING btree (bp_id);
656
657
658 --
659 -- Name: customer_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
660 --
661
662 CREATE UNIQUE INDEX customer_in_1 ON business_partner USING btree (member_code);
663
664
665 --
666 -- Name: customer_in_2; Type: INDEX; Schema: public; Owner: -; Tablespace: 
667 --
668
669 CREATE UNIQUE INDEX customer_in_2 ON business_partner USING btree (member_id);
670
671
672 --
673 -- Name: database_unique_owner; Type: INDEX; Schema: public; Owner: -; Tablespace: 
674 --
675
676 CREATE UNIQUE INDEX database_unique_owner ON database_user USING btree (name, engine);
677
678
679 --
680 -- Name: domain_unique_id; Type: INDEX; Schema: public; Owner: -; Tablespace: 
681 --
682
683 CREATE UNIQUE INDEX domain_unique_id ON domain USING btree (domain_id);
684
685
686 --
687 -- Name: domain_unique_name; Type: INDEX; Schema: public; Owner: -; Tablespace: 
688 --
689
690 CREATE UNIQUE INDEX domain_unique_name ON domain USING btree (domain_name);
691
692
693 --
694 -- Name: emailaddr_uniq2; Type: INDEX; Schema: public; Owner: -; Tablespace: 
695 --
696
697 CREATE UNIQUE INDEX emailaddr_uniq2 ON emailaddr USING btree (localpart, domain_id) WHERE (subdomain IS NULL);
698
699
700 --
701 -- Name: hive_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
702 --
703
704 CREATE UNIQUE INDEX hive_in_1 ON hive USING btree (hive_name);
705
706
707 --
708 -- Name: inet_addr_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
709 --
710
711 CREATE UNIQUE INDEX inet_addr_in_1 ON inet_addr USING btree (inet_addr);
712
713
714 --
715 -- Name: packet_component_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
716 --
717
718 CREATE INDEX packet_component_in_1 ON packet_component USING btree (packet_id);
719
720
721 --
722 -- Name: packet_component_in_2; Type: INDEX; Schema: public; Owner: -; Tablespace: 
723 --
724
725 CREATE INDEX packet_component_in_2 ON packet_component USING btree (basecomponent_id);
726
727
728 --
729 -- Name: packet_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
730 --
731
732 CREATE UNIQUE INDEX packet_in_1 ON packet USING btree (packet_name);
733
734
735 --
736 -- Name: packet_in_2; Type: INDEX; Schema: public; Owner: -; Tablespace: 
737 --
738
739 CREATE INDEX packet_in_2 ON packet USING btree (bp_id);
740
741
742 --
743 -- Name: unique_task_id; Type: INDEX; Schema: public; Owner: -; Tablespace: 
744 --
745
746 CREATE UNIQUE INDEX unique_task_id ON queue_task USING btree (task_id);
747
748
749 --
750 -- Name: database_owner; Type: FK CONSTRAINT; Schema: public; Owner: -
751 --
752
753 ALTER TABLE ONLY database
754     ADD CONSTRAINT database_owner FOREIGN KEY (owner, engine) REFERENCES database_user(name, engine);
755
756
757 --
758 -- Name: database_packet_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
759 --
760
761 ALTER TABLE ONLY database
762     ADD CONSTRAINT database_packet_id_fkey FOREIGN KEY (packet_id) REFERENCES packet(packet_id) DEFERRABLE;
763
764
765 --
766 -- Name: dbuser_packet_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
767 --
768
769 ALTER TABLE ONLY database_user
770     ADD CONSTRAINT dbuser_packet_id_fkey FOREIGN KEY (packet_id) REFERENCES packet(packet_id) DEFERRABLE;
771
772
773 --
774 -- Name: domain_owner_chk; Type: FK CONSTRAINT; Schema: public; Owner: -
775 --
776
777 ALTER TABLE ONLY domain
778     ADD CONSTRAINT domain_owner_chk FOREIGN KEY (domain_owner) REFERENCES unixuser(unixuser_id) MATCH FULL;
779
780
781 --
782 -- Name: email_domain; Type: FK CONSTRAINT; Schema: public; Owner: -
783 --
784
785 ALTER TABLE ONLY emailaddr
786     ADD CONSTRAINT email_domain FOREIGN KEY (domain_id) REFERENCES domain(domain_id);
787
788
789 --
790 -- Name: emailalias_pac_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
791 --
792
793 ALTER TABLE ONLY emailalias
794     ADD CONSTRAINT emailalias_pac_id_fkey FOREIGN KEY (pac_id) REFERENCES packet(packet_id) DEFERRABLE;
795
796
797 --
798 -- Name: fk_bank_acc_reference_business; Type: FK CONSTRAINT; Schema: public; Owner: -
799 --
800
801 ALTER TABLE ONLY bank_account
802     ADD CONSTRAINT fk_bank_acc_reference_business FOREIGN KEY (bp_id) REFERENCES business_partner(bp_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
803
804
805 --
806 -- Name: fk_bcomp_bpack; Type: FK CONSTRAINT; Schema: public; Owner: -
807 --
808
809 ALTER TABLE ONLY component
810     ADD CONSTRAINT fk_bcomp_bpack FOREIGN KEY (basepacket_id) REFERENCES basepacket(basepacket_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
811
812
813 --
814 -- Name: fk_comp_bcomp; Type: FK CONSTRAINT; Schema: public; Owner: -
815 --
816
817 ALTER TABLE ONLY packet_component
818     ADD CONSTRAINT fk_comp_bcomp FOREIGN KEY (basepacket_id, basecomponent_id) REFERENCES component(basepacket_id, basecomponent_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
819
820
821 --
822 -- Name: fk_comp_pack; Type: FK CONSTRAINT; Schema: public; Owner: -
823 --
824
825 ALTER TABLE ONLY packet_component
826     ADD CONSTRAINT fk_comp_pack FOREIGN KEY (packet_id) REFERENCES packet(packet_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
827
828
829 --
830 -- Name: fk_contact_reference_business; Type: FK CONSTRAINT; Schema: public; Owner: -
831 --
832
833 ALTER TABLE ONLY contact
834     ADD CONSTRAINT fk_contact_reference_business FOREIGN KEY (bp_id) REFERENCES business_partner(bp_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
835
836
837 --
838 -- Name: fk_hive_inet; Type: FK CONSTRAINT; Schema: public; Owner: -
839 --
840
841 ALTER TABLE ONLY hive
842     ADD CONSTRAINT fk_hive_inet FOREIGN KEY (inet_addr_id) REFERENCES inet_addr(inet_addr_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
843
844
845 --
846 -- Name: fk_pac_cur_inet; Type: FK CONSTRAINT; Schema: public; Owner: -
847 --
848
849 ALTER TABLE ONLY packet
850     ADD CONSTRAINT fk_pac_cur_inet FOREIGN KEY (cur_inet_addr_id) REFERENCES inet_addr(inet_addr_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
851
852
853 --
854 -- Name: fk_pac_old_inet; Type: FK CONSTRAINT; Schema: public; Owner: -
855 --
856
857 ALTER TABLE ONLY packet
858     ADD CONSTRAINT fk_pac_old_inet FOREIGN KEY (old_inet_addr_id) REFERENCES inet_addr(inet_addr_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
859
860
861 --
862 -- Name: fk_packet_bp; Type: FK CONSTRAINT; Schema: public; Owner: -
863 --
864
865 ALTER TABLE ONLY packet
866     ADD CONSTRAINT fk_packet_bp FOREIGN KEY (bp_id) REFERENCES business_partner(bp_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
867
868
869 --
870 -- Name: fk_packet_hive; Type: FK CONSTRAINT; Schema: public; Owner: -
871 --
872
873 ALTER TABLE ONLY packet
874     ADD CONSTRAINT fk_packet_hive FOREIGN KEY (hive_id) REFERENCES hive(hive_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
875
876
877 --
878 -- Name: fk_reference_13; Type: FK CONSTRAINT; Schema: public; Owner: -
879 --
880
881 ALTER TABLE ONLY component
882     ADD CONSTRAINT fk_reference_13 FOREIGN KEY (basecomponent_id) REFERENCES basecomponent(basecomponent_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
883
884
885 --
886 -- Name: queue_task_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
887 --
888
889 ALTER TABLE ONLY queue_task
890     ADD CONSTRAINT queue_task_user_id_fkey FOREIGN KEY (user_id) REFERENCES unixuser(unixuser_id) ON DELETE SET NULL;
891
b127d6 892 --
PB 893 -- domain options
894 --
895
b0ea76 896 CREATE SEQUENCE domain_option_id_seq
PH 897     INCREMENT BY 1
898     NO MAXVALUE
899     NO MINVALUE
900     CACHE 1;
901
902 CREATE TABLE domain_option (
903     domain_option_id integer DEFAULT nextval(('"domain_option_id_seq"'::text)::regclass) NOT NULL,
904     domain_option_name character varying(50) NOT NULL
905 );
906
907 ALTER TABLE ONLY domain_option
31889d 908     ADD CONSTRAINT pk_domain_option PRIMARY KEY (domain_option_id);
b0ea76 909
31889d 910 CREATE UNIQUE INDEX domain_option_name_idx ON domain_option USING btree ( domain_option_name );
01425c 911     
b0ea76 912 CREATE TABLE domain__domain_option (
PH 913     domain_option_id integer NOT NULL,
914     domain_id integer NOT NULL
915 ); 
916
31889d 917 ALTER TABLE ONLY domain__domain_option
HTS 918     ADD CONSTRAINT pk_domain__domain_option PRIMARY KEY (domain_option_id, domain_id);
b0ea76 919
PH 920 ALTER TABLE ONLY domain__domain_option
921     ADD CONSTRAINT domain_option_id_fkey FOREIGN KEY (domain_option_id) 
922         REFERENCES domain_option(domain_option_id) DEFERRABLE;
923
924 ALTER TABLE ONLY domain__domain_option
925     ADD CONSTRAINT domain_id_fkey FOREIGN KEY (domain_id) 
926         REFERENCES domain(domain_id) DEFERRABLE;
13151e 927