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