summaryrefslogtreecommitdiff
path: root/webmail/plugins/carddav/SQL/postgresql.sql
blob: 75c79a7edf596b3be51b0ca8e4cd1270b36cbd65 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
CREATE TABLE IF NOT EXISTS "carddav_server" (
	"carddav_server_id" serial,
	"user_id" int NOT NULL REFERENCES "users" ON DELETE CASCADE,
	"url" varchar(255) NOT NULL,
	"username" varchar(128) NOT NULL,
	"password" varchar(128) NOT NULL,
	"label" varchar(128) NOT NULL,
	"read_only" int NOT NULL,
	PRIMARY KEY ("carddav_server_id")
);

CREATE TABLE IF NOT EXISTS "carddav_contacts" (
	"carddav_contact_id" serial,
	"carddav_server_id" int REFERENCES "carddav_server" ON DELETE CASCADE,
	"user_id" int,
	"etag" varchar(64) NOT NULL,
	"last_modified" varchar(128) NOT NULL,
	"vcard_id" varchar(64),
	"vcard" text NOT NULL,
	"words" text,
	"firstname" varchar(128) DEFAULT NULL,
	"surname" varchar(128) DEFAULT NULL,
	"name" varchar(255) DEFAULT NULL,
	"email" varchar(255) DEFAULT NULL,
	PRIMARY KEY ("carddav_server_id","user_id","vcard_id")
);

CREATE INDEX "user_id" ON "carddav_contacts" ("user_id");