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