thomascube
2006-09-04 2f2f15b7aabe19e45dad9bddb7eb7f4394aa1e21
commit | author | age
aade7b 1 -- RoundCube Webmail initial database structure
f7bfec 2 -- Version 0.1-beta2
aade7b 3 -- 
T 4
5 -- --------------------------------------------------------
6
7 SET FOREIGN_KEY_CHECKS=0;
8
9
10 -- Table structure for table `session`
11
12 CREATE TABLE `session` (
13  `sess_id` varchar(40) NOT NULL,
14  `created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
15  `changed` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
16  `ip` varchar(15) NOT NULL,
17  `vars` text NOT NULL,
18  PRIMARY KEY(`sess_id`)
f7bfec 19 ) TYPE=MYISAM CHARACTER SET ascii COLLATE ascii_general_ci;
aade7b 20
T 21
22 -- Table structure for table `users`
23
24 CREATE TABLE `users` (
25  `user_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
26  `username` varchar(128) NOT NULL,
27  `mail_host` varchar(128) NOT NULL,
28  `alias` varchar(128) NOT NULL,
29  `created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
30  `last_login` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
31  `language` varchar(5) NOT NULL DEFAULT 'en',
32  `preferences` text NOT NULL,
33  PRIMARY KEY(`user_id`)
f7bfec 34 ) TYPE=MYISAM CHARACTER SET ascii COLLATE ascii_general_ci;
aade7b 35
T 36
37 -- Table structure for table `messages`
38
39 CREATE TABLE `messages` (
40  `message_id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
f7bfec 41  `user_id` int(10) UNSIGNED NOT NULL DEFAULT '0',
aade7b 42  `del` tinyint(1) NOT NULL DEFAULT '0',
f7bfec 43  `cache_key` varchar(128) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
aade7b 44  `created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
T 45  `idx` int(11) UNSIGNED NOT NULL DEFAULT '0',
46  `uid` int(11) UNSIGNED NOT NULL DEFAULT '0',
47  `subject` varchar(255) NOT NULL,
48  `from` varchar(255) NOT NULL,
49  `to` varchar(255) NOT NULL,
50  `cc` varchar(255) NOT NULL,
51  `date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
52  `size` int(11) UNSIGNED NOT NULL DEFAULT '0',
53  `headers` text NOT NULL,
f7bfec 54  `structure` text,
aade7b 55  PRIMARY KEY(`message_id`),
T 56  INDEX `idx`(`idx`),
57  INDEX `uid`(`uid`),
f7bfec 58  UNIQUE `uniqueness` (`cache_key`, `uid`),
aade7b 59  CONSTRAINT `User_ID_FK_messages` FOREIGN KEY (`user_id`)
T 60    REFERENCES `users`(`user_id`)
61      ON DELETE CASCADE
62      ON UPDATE CASCADE
63 ) TYPE=MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci;
64
65
66 -- Table structure for table `cache`
67
68 CREATE TABLE `cache` (
69  `cache_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
f7bfec 70  `session_id` varchar(40) CHARACTER SET ascii COLLATE ascii_general_ci,
T 71  `cache_key` varchar(128) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
aade7b 72  `created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
T 73  `data` longtext NOT NULL,
74  `user_id` int(10) UNSIGNED NOT NULL DEFAULT '0',
75  PRIMARY KEY(`cache_id`),
76  INDEX `cache_key`(`cache_key`),
77  INDEX `session_id`(`session_id`),
78  CONSTRAINT `User_ID_FK_cache` FOREIGN KEY (`user_id`)
79    REFERENCES `users`(`user_id`)
80      ON DELETE CASCADE
81      ON UPDATE CASCADE
82 ) TYPE=MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci;
83
84
85 -- Table structure for table `contacts`
86
87 CREATE TABLE `contacts` (
88  `contact_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
89  `changed` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
90  `del` tinyint(1) NOT NULL DEFAULT '0',
91  `name` varchar(128) NOT NULL,
92  `email` varchar(128) NOT NULL,
93  `firstname` varchar(128) NOT NULL,
94  `surname` varchar(128) NOT NULL,
95  `vcard` text NOT NULL,
96  `user_id` int(10) UNSIGNED NOT NULL DEFAULT '0',
97  PRIMARY KEY(`contact_id`),
98  CONSTRAINT `User_ID_FK_contacts` FOREIGN KEY (`user_id`)
99    REFERENCES `users`(`user_id`)
100      ON DELETE CASCADE
101      ON UPDATE CASCADE
102 ) TYPE=MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci;
103
104
105 -- Table structure for table `identities`
106
107 CREATE TABLE `identities` (
108  `identity_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
109  `del` tinyint(1) NOT NULL DEFAULT '0',
110  `standard` tinyint(1) NOT NULL DEFAULT '0',
111  `name` varchar(128) NOT NULL,
112  `organization` varchar(128) NOT NULL,
113  `email` varchar(128) NOT NULL,
114  `reply-to` varchar(128) NOT NULL,
115  `bcc` varchar(128) NOT NULL,
116  `signature` text NOT NULL,
117  `user_id` int(10) UNSIGNED NOT NULL DEFAULT '0',
118  PRIMARY KEY(`identity_id`),
119  CONSTRAINT `User_ID_FK_identities` FOREIGN KEY (`user_id`)
120    REFERENCES `users`(`user_id`)
121      ON DELETE CASCADE
122      ON UPDATE CASCADE
123 ) TYPE=MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci;
124
125
126 SET FOREIGN_KEY_CHECKS=1;