Mercurial > hg > rc1
comparison plugins/calendar/drivers/database/SQL/postgres.initial.sql @ 3:f6fe4b6ae66a
calendar plugin nearly as distributed
| author | Charlie Root |
|---|---|
| date | Sat, 13 Jan 2018 08:56:12 -0500 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 2:c828b0fd4a6e | 3:f6fe4b6ae66a |
|---|---|
| 1 /** | |
| 2 * RoundCube Calendar | |
| 3 * | |
| 4 * Plugin to add a calendar to RoundCube. | |
| 5 * | |
| 6 * @author Lazlo Westerhof | |
| 7 * @author Albert Lee | |
| 8 * @author Aleksander Machniak <machniak@kolabsys.com> | |
| 9 * @licence GNU AGPL | |
| 10 * @copyright (c) 2010 Lazlo Westerhof - Netherlands | |
| 11 * @copyright (c) 2014 Kolab Systems AG | |
| 12 * | |
| 13 **/ | |
| 14 | |
| 15 | |
| 16 CREATE SEQUENCE calendars_seq | |
| 17 INCREMENT BY 1 | |
| 18 NO MAXVALUE | |
| 19 NO MINVALUE | |
| 20 CACHE 1; | |
| 21 | |
| 22 CREATE TABLE calendars ( | |
| 23 calendar_id integer DEFAULT nextval('calendars_seq'::regclass) NOT NULL, | |
| 24 user_id integer NOT NULL | |
| 25 REFERENCES users (user_id) ON UPDATE CASCADE ON DELETE CASCADE, | |
| 26 name varchar(255) NOT NULL, | |
| 27 color varchar(8) NOT NULL, | |
| 28 showalarms smallint NOT NULL DEFAULT 1, | |
| 29 PRIMARY KEY (calendar_id) | |
| 30 ); | |
| 31 | |
| 32 CREATE INDEX calendars_user_id_idx ON calendars (user_id, name); | |
| 33 | |
| 34 | |
| 35 CREATE SEQUENCE events_seq | |
| 36 INCREMENT BY 1 | |
| 37 NO MAXVALUE | |
| 38 NO MINVALUE | |
| 39 CACHE 1; | |
| 40 | |
| 41 CREATE TABLE events ( | |
| 42 event_id integer DEFAULT nextval('events_seq'::regclass) NOT NULL, | |
| 43 calendar_id integer NOT NULL | |
| 44 REFERENCES calendars (calendar_id) ON UPDATE CASCADE ON DELETE CASCADE, | |
| 45 recurrence_id integer NOT NULL DEFAULT 0, | |
| 46 uid varchar(255) NOT NULL DEFAULT '', | |
| 47 instance varchar(16) NOT NULL DEFAULT '', | |
| 48 isexception smallint NOT NULL DEFAULT '0', | |
| 49 created timestamp without time zone DEFAULT now() NOT NULL, | |
| 50 changed timestamp without time zone DEFAULT now(), | |
| 51 sequence integer NOT NULL DEFAULT 0, | |
| 52 "start" timestamp without time zone DEFAULT now() NOT NULL, | |
| 53 "end" timestamp without time zone DEFAULT now() NOT NULL, | |
| 54 recurrence varchar(255) DEFAULT NULL, | |
| 55 title character varying(255) NOT NULL DEFAULT '', | |
| 56 description text NOT NULL DEFAULT '', | |
| 57 location character varying(255) NOT NULL DEFAULT '', | |
| 58 categories character varying(255) NOT NULL DEFAULT '', | |
| 59 url character varying(255) NOT NULL DEFAULT '', | |
| 60 all_day smallint NOT NULL DEFAULT 0, | |
| 61 free_busy smallint NOT NULL DEFAULT 0, | |
| 62 priority smallint NOT NULL DEFAULT 0, | |
| 63 sensitivity smallint NOT NULL DEFAULT 0, | |
| 64 status character varying(32) NOT NULL DEFAULT '', | |
| 65 alarms text DEFAULT NULL, | |
| 66 attendees text DEFAULT NULL, | |
| 67 notifyat timestamp without time zone DEFAULT NULL, | |
| 68 PRIMARY KEY (event_id) | |
| 69 ); | |
| 70 | |
| 71 CREATE INDEX events_calendar_id_notifyat_idx ON events (calendar_id, notifyat); | |
| 72 CREATE INDEX events_uid_idx ON events (uid); | |
| 73 CREATE INDEX events_recurrence_id_idx ON events (recurrence_id); | |
| 74 | |
| 75 | |
| 76 CREATE SEQUENCE attachments_seq | |
| 77 INCREMENT BY 1 | |
| 78 NO MAXVALUE | |
| 79 NO MINVALUE | |
| 80 CACHE 1; | |
| 81 | |
| 82 CREATE TABLE attachments ( | |
| 83 attachment_id integer DEFAULT nextval('attachments_seq'::regclass) NOT NULL, | |
| 84 event_id integer NOT NULL | |
| 85 REFERENCES events (event_id) ON DELETE CASCADE ON UPDATE CASCADE, | |
| 86 filename varchar(255) NOT NULL DEFAULT '', | |
| 87 mimetype varchar(255) NOT NULL DEFAULT '', | |
| 88 size integer NOT NULL DEFAULT 0, | |
| 89 data text NOT NULL DEFAULT '', | |
| 90 PRIMARY KEY (attachment_id) | |
| 91 ); | |
| 92 | |
| 93 CREATE INDEX attachments_user_id_idx ON attachments (event_id); | |
| 94 | |
| 95 | |
| 96 CREATE TABLE itipinvitations ( | |
| 97 token varchar(64) NOT NULL, | |
| 98 event_uid varchar(255) NOT NULL, | |
| 99 user_id integer NOT NULL | |
| 100 REFERENCES users (user_id) ON DELETE CASCADE ON UPDATE CASCADE, | |
| 101 event TEXT NOT NULL, | |
| 102 expires timestamp without time zone DEFAULT NULL, | |
| 103 cancelled smallint NOT NULL DEFAULT 0, | |
| 104 PRIMARY KEY (token) | |
| 105 ); | |
| 106 | |
| 107 CREATE INDEX itipinvitations_user_id_event_uid_idx ON itipinvitations (user_id, event_uid); | |
| 108 | |
| 109 INSERT INTO system (name, value) VALUES ('calendar-database-version', '2015022700'); |
