HSAdmin Backend Domains, E-Mail, Datenbanken
Peter Hormanns
2013-04-30 89493989c124c24cc6f22de978eef0df72800e23
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,
894939 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 (
894939 131         (0 <= min_quantity) AND 
d45079 132         (min_quantity <= default_quantity) AND 
PH 133         (default_quantity <= max_quantity) AND 
894939 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 SET default_with_oids = true;
333
334 --
335 -- Name: hive; Type: TABLE; Schema: public; Owner: -; Tablespace: 
336 --
337
338 CREATE TABLE hive (
339     hive_id integer DEFAULT nextval(('"hive_hive_id_seq"'::text)::regclass) NOT NULL,
340     hive_name character varying(3) NOT NULL,
341     inet_addr_id integer NOT NULL,
342     description character varying(100)
343 );
344
345
346 --
347 -- Name: hive_hive_id_seq; Type: SEQUENCE; Schema: public; Owner: -
348 --
349
350 CREATE SEQUENCE hive_hive_id_seq
351     INCREMENT BY 1
352     NO MAXVALUE
353     NO MINVALUE
354     CACHE 1;
355
356
357 --
358 -- Name: inet_addr; Type: TABLE; Schema: public; Owner: -; Tablespace: 
359 --
360
361 CREATE TABLE inet_addr (
362     inet_addr_id integer DEFAULT nextval(('"inet_addr_inet_addr_id_seq"'::text)::regclass) NOT NULL,
363     inet_addr inet NOT NULL,
364     description character varying(100),
365     CONSTRAINT ckc_inet_addr_inet_add CHECK ((masklen(inet_addr) = 32))
366 );
367
368
369 --
370 -- Name: inet_addr_inet_addr_id_seq; Type: SEQUENCE; Schema: public; Owner: -
371 --
372
373 CREATE SEQUENCE inet_addr_inet_addr_id_seq
374     INCREMENT BY 1
375     NO MAXVALUE
376     NO MINVALUE
377     CACHE 1;
378
379
380 --
381 -- Name: packet; Type: TABLE; Schema: public; Owner: -; Tablespace: 
382 --
383
384 CREATE TABLE packet (
385     packet_id integer DEFAULT nextval(('"packet_packet_id_seq"'::text)::regclass) NOT NULL,
386     packet_name character varying(5) NOT NULL,
387     bp_id integer NOT NULL,
388     hive_id integer NOT NULL,
389     created date NOT NULL,
390     cancelled date,
25058b 391     free boolean NOT NULL,
13151e 392     cur_inet_addr_id integer,
PH 393     old_inet_addr_id integer,
394     CONSTRAINT ckt_packet CHECK (((cancelled IS NULL) OR (cancelled > created)))
395 );
396
397
398 --
399 -- Name: packet_component; Type: TABLE; Schema: public; Owner: -; Tablespace: 
400 --
401
402 CREATE TABLE packet_component (
403     basepacket_id integer NOT NULL,
404     basecomponent_id integer NOT NULL,
405     packet_id integer NOT NULL,
406     quantity integer NOT NULL,
407     created date,
408     cancelled date,
409     CONSTRAINT ckt_packet_component CHECK (((cancelled IS NULL) OR (cancelled > created)))
410 );
411
412
413 --
414 -- Name: packet_packet_id_seq; Type: SEQUENCE; Schema: public; Owner: -
415 --
416
417 CREATE SEQUENCE packet_packet_id_seq
418     INCREMENT BY 1
419     NO MAXVALUE
420     NO MINVALUE
421     CACHE 1;
422
423
424 SET default_with_oids = false;
425
426 --
427 -- Name: queue_task; Type: TABLE; Schema: public; Owner: -; Tablespace: 
428 --
429
430 CREATE TABLE queue_task (
431     task_id integer DEFAULT nextval(('"queue_task_id_seq"'::text)::regclass) NOT NULL,
432     proc bytea,
433     exception text,
434     started timestamp without time zone NOT NULL,
435     finished timestamp without time zone,
436     title character varying(192),
437     details text,
438     user_id integer
439 );
440
441
442 --
443 -- Name: queue_task_id_seq; Type: SEQUENCE; Schema: public; Owner: -
444 --
445
446 CREATE SEQUENCE queue_task_id_seq
447     INCREMENT BY 1
448     NO MAXVALUE
449     NO MINVALUE
450     CACHE 1;
451
452
453 --
454 -- Name: unixuser_unixuser_id_seq; Type: SEQUENCE; Schema: public; Owner: -
455 --
456
457 CREATE SEQUENCE unixuser_unixuser_id_seq
458     INCREMENT BY 1
459     NO MAXVALUE
460     NO MINVALUE
461     CACHE 1;
462
463
464 --
465 -- Name: unixuser; Type: TABLE; Schema: public; Owner: -; Tablespace: 
466 --
467
468 CREATE TABLE unixuser (
469     unixuser_id integer DEFAULT nextval('unixuser_unixuser_id_seq'::regclass) NOT NULL,
470     name character varying(64) NOT NULL,
471     comment character varying(128),
472     shell character varying(64) NOT NULL,
473     homedir character varying(128) NOT NULL,
474     locked boolean NOT NULL,
475     packet_id integer NOT NULL,
476     quota_softlimit integer DEFAULT 0 NOT NULL,
477     userid integer NOT NULL,
478     quota_hardlimit integer DEFAULT 0,
479     CONSTRAINT unixuser_userid CHECK ((userid >= 10000))
480 );
481
482
483 --
484 -- Name: database_uniq; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
485 --
486
487 ALTER TABLE ONLY database
488     ADD CONSTRAINT database_uniq UNIQUE (engine, name);
489
490
491 --
492 -- Name: database_user_uniq; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
493 --
494
495 ALTER TABLE ONLY database_user
496     ADD CONSTRAINT database_user_uniq UNIQUE (engine, name);
497
498
499 --
500 -- Name: emailaddr_uniq; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
501 --
502
503 ALTER TABLE ONLY emailaddr
504     ADD CONSTRAINT emailaddr_uniq UNIQUE (localpart, subdomain, domain_id);
505
506
507 --
508 -- Name: emailalias_uniq; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
509 --
510
511 ALTER TABLE ONLY emailalias
512     ADD CONSTRAINT emailalias_uniq UNIQUE (name);
513
514
515 --
516 -- Name: pk_bank_account; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
517 --
518
519 ALTER TABLE ONLY bank_account
520     ADD CONSTRAINT pk_bank_account PRIMARY KEY (bank_account_id);
521
522
523 --
524 -- Name: pk_basecomponent; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
525 --
526
527 ALTER TABLE ONLY basecomponent
528     ADD CONSTRAINT pk_basecomponent PRIMARY KEY (basecomponent_id);
529
530
531 --
532 -- Name: pk_basepacket; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
533 --
534
535 ALTER TABLE ONLY basepacket
536     ADD CONSTRAINT pk_basepacket PRIMARY KEY (basepacket_id);
537
538
539 --
540 -- Name: pk_business_partner; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
541 --
542
543 ALTER TABLE ONLY business_partner
544     ADD CONSTRAINT pk_business_partner PRIMARY KEY (bp_id);
545
546
547 --
548 -- Name: pk_component; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
549 --
550
551 ALTER TABLE ONLY component
552     ADD CONSTRAINT pk_component PRIMARY KEY (basepacket_id, basecomponent_id);
553
554
555 --
556 -- Name: pk_contact; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
557 --
558
559 ALTER TABLE ONLY contact
560     ADD CONSTRAINT pk_contact PRIMARY KEY (contact_id);
561
562
563 --
564 -- Name: pk_database; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
565 --
566
567 ALTER TABLE ONLY database
568     ADD CONSTRAINT pk_database PRIMARY KEY (database_id);
569
570
571 --
572 -- Name: pk_database_user; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
573 --
574
575 ALTER TABLE ONLY database_user
576     ADD CONSTRAINT pk_database_user PRIMARY KEY (dbuser_id);
577
578
579 --
580 -- Name: pk_hive; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
581 --
582
583 ALTER TABLE ONLY hive
584     ADD CONSTRAINT pk_hive PRIMARY KEY (hive_id);
585
586
587 --
588 -- Name: pk_inet_addr; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
589 --
590
591 ALTER TABLE ONLY inet_addr
592     ADD CONSTRAINT pk_inet_addr PRIMARY KEY (inet_addr_id);
593
594
595 --
596 -- Name: pk_packet; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
597 --
598
599 ALTER TABLE ONLY packet
600     ADD CONSTRAINT pk_packet PRIMARY KEY (packet_id);
601
602
603 --
604 -- Name: pk_packet_component; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
605 --
606
607 ALTER TABLE ONLY packet_component
608     ADD CONSTRAINT pk_packet_component PRIMARY KEY (basepacket_id, basecomponent_id, packet_id);
609
610
611 --
612 -- Name: pk_unixuser; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
613 --
614
615 ALTER TABLE ONLY unixuser
616     ADD CONSTRAINT pk_unixuser PRIMARY KEY (unixuser_id);
617
618
619 --
620 -- Name: unixuser_name_key; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
621 --
622
623 ALTER TABLE ONLY unixuser
624     ADD CONSTRAINT unixuser_name_key UNIQUE (name);
625
626
627 --
628 -- Name: bank_account_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
629 --
630
631 CREATE INDEX bank_account_in_1 ON bank_account USING btree (bp_id);
632
633
634 --
635 -- Name: basecomponent_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
636 --
637
638 CREATE UNIQUE INDEX basecomponent_in_1 ON basecomponent USING btree (basecomponent_code);
639
640
641 --
642 -- Name: basepacket_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
643 --
644
645 CREATE UNIQUE INDEX basepacket_in_1 ON basepacket USING btree (basepacket_code);
646
647
648 --
649 -- Name: component_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
650 --
651
652 CREATE INDEX component_in_1 ON component USING btree (basecomponent_id);
653
654
655 --
656 -- Name: contact_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
657 --
658
659 CREATE INDEX contact_in_1 ON contact USING btree (bp_id);
660
661
662 --
663 -- Name: customer_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
664 --
665
666 CREATE UNIQUE INDEX customer_in_1 ON business_partner USING btree (member_code);
667
668
669 --
670 -- Name: customer_in_2; Type: INDEX; Schema: public; Owner: -; Tablespace: 
671 --
672
673 CREATE UNIQUE INDEX customer_in_2 ON business_partner USING btree (member_id);
674
675
676 --
677 -- Name: database_unique_owner; Type: INDEX; Schema: public; Owner: -; Tablespace: 
678 --
679
680 CREATE UNIQUE INDEX database_unique_owner ON database_user USING btree (name, engine);
681
682
683 --
684 -- Name: domain_unique_id; Type: INDEX; Schema: public; Owner: -; Tablespace: 
685 --
686
687 CREATE UNIQUE INDEX domain_unique_id ON domain USING btree (domain_id);
688
689
690 --
691 -- Name: domain_unique_name; Type: INDEX; Schema: public; Owner: -; Tablespace: 
692 --
693
694 CREATE UNIQUE INDEX domain_unique_name ON domain USING btree (domain_name);
695
696
697 --
698 -- Name: emailaddr_uniq2; Type: INDEX; Schema: public; Owner: -; Tablespace: 
699 --
700
701 CREATE UNIQUE INDEX emailaddr_uniq2 ON emailaddr USING btree (localpart, domain_id) WHERE (subdomain IS NULL);
702
703
704 --
705 -- Name: hive_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
706 --
707
708 CREATE UNIQUE INDEX hive_in_1 ON hive USING btree (hive_name);
709
710
711 --
712 -- Name: inet_addr_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
713 --
714
715 CREATE UNIQUE INDEX inet_addr_in_1 ON inet_addr USING btree (inet_addr);
716
717
718 --
719 -- Name: packet_component_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
720 --
721
722 CREATE INDEX packet_component_in_1 ON packet_component USING btree (packet_id);
723
724
725 --
726 -- Name: packet_component_in_2; Type: INDEX; Schema: public; Owner: -; Tablespace: 
727 --
728
729 CREATE INDEX packet_component_in_2 ON packet_component USING btree (basecomponent_id);
730
731
732 --
733 -- Name: packet_in_1; Type: INDEX; Schema: public; Owner: -; Tablespace: 
734 --
735
736 CREATE UNIQUE INDEX packet_in_1 ON packet USING btree (packet_name);
737
738
739 --
740 -- Name: packet_in_2; Type: INDEX; Schema: public; Owner: -; Tablespace: 
741 --
742
743 CREATE INDEX packet_in_2 ON packet USING btree (bp_id);
744
745
746 --
747 -- Name: unique_task_id; Type: INDEX; Schema: public; Owner: -; Tablespace: 
748 --
749
750 CREATE UNIQUE INDEX unique_task_id ON queue_task USING btree (task_id);
751
752
753 --
754 -- Name: database_owner; Type: FK CONSTRAINT; Schema: public; Owner: -
755 --
756
757 ALTER TABLE ONLY database
758     ADD CONSTRAINT database_owner FOREIGN KEY (owner, engine) REFERENCES database_user(name, engine);
759
760
761 --
762 -- Name: database_packet_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
763 --
764
765 ALTER TABLE ONLY database
766     ADD CONSTRAINT database_packet_id_fkey FOREIGN KEY (packet_id) REFERENCES packet(packet_id) DEFERRABLE;
767
768
769 --
770 -- Name: dbuser_packet_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
771 --
772
773 ALTER TABLE ONLY database_user
774     ADD CONSTRAINT dbuser_packet_id_fkey FOREIGN KEY (packet_id) REFERENCES packet(packet_id) DEFERRABLE;
775
776
777 --
778 -- Name: domain_owner_chk; Type: FK CONSTRAINT; Schema: public; Owner: -
779 --
780
781 ALTER TABLE ONLY domain
782     ADD CONSTRAINT domain_owner_chk FOREIGN KEY (domain_owner) REFERENCES unixuser(unixuser_id) MATCH FULL;
783
784
785 --
786 -- Name: email_domain; Type: FK CONSTRAINT; Schema: public; Owner: -
787 --
788
789 ALTER TABLE ONLY emailaddr
790     ADD CONSTRAINT email_domain FOREIGN KEY (domain_id) REFERENCES domain(domain_id);
791
792
793 --
794 -- Name: emailalias_pac_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
795 --
796
797 ALTER TABLE ONLY emailalias
798     ADD CONSTRAINT emailalias_pac_id_fkey FOREIGN KEY (pac_id) REFERENCES packet(packet_id) DEFERRABLE;
799
800
801 --
802 -- Name: fk_bank_acc_reference_business; Type: FK CONSTRAINT; Schema: public; Owner: -
803 --
804
805 ALTER TABLE ONLY bank_account
806     ADD CONSTRAINT fk_bank_acc_reference_business FOREIGN KEY (bp_id) REFERENCES business_partner(bp_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
807
808
809 --
810 -- Name: fk_bcomp_bpack; Type: FK CONSTRAINT; Schema: public; Owner: -
811 --
812
813 ALTER TABLE ONLY component
814     ADD CONSTRAINT fk_bcomp_bpack FOREIGN KEY (basepacket_id) REFERENCES basepacket(basepacket_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
815
816
817 --
818 -- Name: fk_comp_bcomp; Type: FK CONSTRAINT; Schema: public; Owner: -
819 --
820
821 ALTER TABLE ONLY packet_component
822     ADD CONSTRAINT fk_comp_bcomp FOREIGN KEY (basepacket_id, basecomponent_id) REFERENCES component(basepacket_id, basecomponent_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
823
824
825 --
826 -- Name: fk_comp_pack; Type: FK CONSTRAINT; Schema: public; Owner: -
827 --
828
829 ALTER TABLE ONLY packet_component
830     ADD CONSTRAINT fk_comp_pack FOREIGN KEY (packet_id) REFERENCES packet(packet_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
831
832
833 --
834 -- Name: fk_contact_reference_business; Type: FK CONSTRAINT; Schema: public; Owner: -
835 --
836
837 ALTER TABLE ONLY contact
838     ADD CONSTRAINT fk_contact_reference_business FOREIGN KEY (bp_id) REFERENCES business_partner(bp_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
839
840
841 --
842 -- Name: fk_hive_inet; Type: FK CONSTRAINT; Schema: public; Owner: -
843 --
844
845 ALTER TABLE ONLY hive
846     ADD CONSTRAINT fk_hive_inet FOREIGN KEY (inet_addr_id) REFERENCES inet_addr(inet_addr_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
847
848
849 --
850 -- Name: fk_pac_cur_inet; Type: FK CONSTRAINT; Schema: public; Owner: -
851 --
852
853 ALTER TABLE ONLY packet
854     ADD CONSTRAINT fk_pac_cur_inet FOREIGN KEY (cur_inet_addr_id) REFERENCES inet_addr(inet_addr_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
855
856
857 --
858 -- Name: fk_pac_old_inet; Type: FK CONSTRAINT; Schema: public; Owner: -
859 --
860
861 ALTER TABLE ONLY packet
862     ADD CONSTRAINT fk_pac_old_inet FOREIGN KEY (old_inet_addr_id) REFERENCES inet_addr(inet_addr_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
863
864
865 --
866 -- Name: fk_packet_bp; Type: FK CONSTRAINT; Schema: public; Owner: -
867 --
868
869 ALTER TABLE ONLY packet
870     ADD CONSTRAINT fk_packet_bp FOREIGN KEY (bp_id) REFERENCES business_partner(bp_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
871
872
873 --
874 -- Name: fk_packet_hive; Type: FK CONSTRAINT; Schema: public; Owner: -
875 --
876
877 ALTER TABLE ONLY packet
878     ADD CONSTRAINT fk_packet_hive FOREIGN KEY (hive_id) REFERENCES hive(hive_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
879
880
881 --
882 -- Name: fk_reference_13; Type: FK CONSTRAINT; Schema: public; Owner: -
883 --
884
885 ALTER TABLE ONLY component
886     ADD CONSTRAINT fk_reference_13 FOREIGN KEY (basecomponent_id) REFERENCES basecomponent(basecomponent_id) ON UPDATE RESTRICT ON DELETE RESTRICT;
887
888
889 --
890 -- Name: queue_task_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
891 --
892
893 ALTER TABLE ONLY queue_task
894     ADD CONSTRAINT queue_task_user_id_fkey FOREIGN KEY (user_id) REFERENCES unixuser(unixuser_id) ON DELETE SET NULL;
895
b127d6 896 --
PB 897 -- domain options
898 --
899
b0ea76 900 CREATE SEQUENCE domain_option_id_seq
PH 901     INCREMENT BY 1
902     NO MAXVALUE
903     NO MINVALUE
904     CACHE 1;
905
906 CREATE TABLE domain_option (
907     domain_option_id integer DEFAULT nextval(('"domain_option_id_seq"'::text)::regclass) NOT NULL,
908     domain_option_name character varying(50) NOT NULL
909 );
910
911 ALTER TABLE ONLY domain_option
31889d 912     ADD CONSTRAINT pk_domain_option PRIMARY KEY (domain_option_id);
b0ea76 913
31889d 914 CREATE UNIQUE INDEX domain_option_name_idx ON domain_option USING btree ( domain_option_name );
01425c 915     
b0ea76 916 CREATE TABLE domain__domain_option (
PH 917     domain_option_id integer NOT NULL,
918     domain_id integer NOT NULL
919 ); 
920
31889d 921 ALTER TABLE ONLY domain__domain_option
HTS 922     ADD CONSTRAINT pk_domain__domain_option PRIMARY KEY (domain_option_id, domain_id);
b0ea76 923
PH 924 ALTER TABLE ONLY domain__domain_option
925     ADD CONSTRAINT domain_option_id_fkey FOREIGN KEY (domain_option_id) 
926         REFERENCES domain_option(domain_option_id) DEFERRABLE;
927
928 ALTER TABLE ONLY domain__domain_option
929     ADD CONSTRAINT domain_id_fkey FOREIGN KEY (domain_id) 
930         REFERENCES domain(domain_id) DEFERRABLE;
13151e 931