| | |
| | | -- Roundcube Webmail initial database structure |
| | | |
| | | -- |
| | | -- Table structure for table cache |
| | | -- |
| | | |
| | | CREATE TABLE cache ( |
| | | cache_id integer NOT NULL PRIMARY KEY, |
| | | user_id integer NOT NULL default 0, |
| | | cache_key varchar(128) NOT NULL default '', |
| | | created datetime NOT NULL default '0000-00-00 00:00:00', |
| | | data text NOT NULL |
| | | ); |
| | | |
| | | CREATE INDEX ix_cache_user_cache_key ON cache(user_id, cache_key); |
| | | CREATE INDEX ix_cache_created ON cache(created); |
| | | |
| | | |
| | | -- -------------------------------------------------------- |
| | | |
| | | -- |
| | | -- Table structure for table contacts and related |
| | | -- |
| | | |
| | | CREATE TABLE contacts ( |
| | | contact_id integer NOT NULL PRIMARY KEY, |
| | | user_id integer NOT NULL default '0', |
| | | user_id integer NOT NULL, |
| | | changed datetime NOT NULL default '0000-00-00 00:00:00', |
| | | del tinyint NOT NULL default '0', |
| | | name varchar(128) NOT NULL default '', |
| | | email varchar(255) NOT NULL default '', |
| | | email text NOT NULL default '', |
| | | firstname varchar(128) NOT NULL default '', |
| | | surname varchar(128) NOT NULL default '', |
| | | vcard text NOT NULL default '', |
| | | words text NOT NULL default '' |
| | | ); |
| | | |
| | | CREATE INDEX ix_contacts_user_id ON contacts(user_id, email); |
| | | CREATE INDEX ix_contacts_user_id ON contacts(user_id, del); |
| | | |
| | | |
| | | CREATE TABLE contactgroups ( |
| | |
| | | |
| | | CREATE INDEX ix_contactgroupmembers_contact_id ON contactgroupmembers (contact_id); |
| | | |
| | | |
| | | -- -------------------------------------------------------- |
| | | |
| | | -- |
| | | -- Table structure for table identities |
| | | -- |
| | |
| | | ); |
| | | |
| | | CREATE INDEX ix_identities_user_id ON identities(user_id, del); |
| | | |
| | | |
| | | -- -------------------------------------------------------- |
| | | CREATE INDEX ix_identities_email ON identities(email, del); |
| | | |
| | | -- |
| | | -- Table structure for table users |
| | |
| | | user_id integer NOT NULL PRIMARY KEY, |
| | | username varchar(128) NOT NULL default '', |
| | | mail_host varchar(128) NOT NULL default '', |
| | | alias varchar(128) NOT NULL default '', |
| | | created datetime NOT NULL default '0000-00-00 00:00:00', |
| | | last_login datetime DEFAULT NULL, |
| | | language varchar(5), |
| | |
| | | ); |
| | | |
| | | CREATE UNIQUE INDEX ix_users_username ON users(username, mail_host); |
| | | CREATE INDEX ix_users_alias ON users(alias); |
| | | |
| | | -- -------------------------------------------------------- |
| | | |
| | | -- |
| | | -- Table structure for table session |
| | |
| | | |
| | | CREATE INDEX ix_session_changed ON session (changed); |
| | | |
| | | -- -------------------------------------------------------- |
| | | |
| | | -- |
| | | -- Table structure for table dictionary |
| | | -- |
| | |
| | | ); |
| | | |
| | | CREATE UNIQUE INDEX ix_dictionary_user_language ON dictionary (user_id, "language"); |
| | | |
| | | -- -------------------------------------------------------- |
| | | |
| | | -- |
| | | -- Table structure for table searches |
| | |
| | | data text NOT NULL |
| | | ); |
| | | |
| | | CREATE UNIQUE INDEX ix_searches_user_type_name (user_id, type, name); |
| | | CREATE UNIQUE INDEX ix_searches_user_type_name ON searches (user_id, type, name); |
| | | |
| | | -- -------------------------------------------------------- |
| | | -- |
| | | -- Table structure for table cache |
| | | -- |
| | | |
| | | CREATE TABLE cache ( |
| | | user_id integer NOT NULL default 0, |
| | | cache_key varchar(128) NOT NULL default '', |
| | | created datetime NOT NULL default '0000-00-00 00:00:00', |
| | | expires datetime DEFAULT NULL, |
| | | data text NOT NULL |
| | | ); |
| | | |
| | | CREATE INDEX ix_cache_user_cache_key ON cache(user_id, cache_key); |
| | | CREATE INDEX ix_cache_expires ON cache(expires); |
| | | |
| | | -- |
| | | -- Table structure for table cache_shared |
| | | -- |
| | | |
| | | CREATE TABLE cache_shared ( |
| | | cache_key varchar(255) NOT NULL, |
| | | created datetime NOT NULL default '0000-00-00 00:00:00', |
| | | expires datetime DEFAULT NULL, |
| | | data text NOT NULL |
| | | ); |
| | | |
| | | CREATE INDEX ix_cache_shared_cache_key ON cache_shared(cache_key); |
| | | CREATE INDEX ix_cache_shared_expires ON cache_shared(expires); |
| | | |
| | | -- |
| | | -- Table structure for table cache_index |
| | |
| | | CREATE TABLE cache_index ( |
| | | user_id integer NOT NULL, |
| | | mailbox varchar(255) NOT NULL, |
| | | changed datetime NOT NULL default '0000-00-00 00:00:00', |
| | | expires datetime DEFAULT NULL, |
| | | valid smallint NOT NULL DEFAULT '0', |
| | | data text NOT NULL, |
| | | PRIMARY KEY (user_id, mailbox) |
| | | ); |
| | | |
| | | CREATE INDEX ix_cache_index_changed ON cache_index (changed); |
| | | |
| | | -- -------------------------------------------------------- |
| | | CREATE INDEX ix_cache_index_expires ON cache_index (expires); |
| | | |
| | | -- |
| | | -- Table structure for table cache_thread |
| | |
| | | CREATE TABLE cache_thread ( |
| | | user_id integer NOT NULL, |
| | | mailbox varchar(255) NOT NULL, |
| | | changed datetime NOT NULL default '0000-00-00 00:00:00', |
| | | expires datetime DEFAULT NULL, |
| | | data text NOT NULL, |
| | | PRIMARY KEY (user_id, mailbox) |
| | | ); |
| | | |
| | | CREATE INDEX ix_cache_thread_changed ON cache_thread (changed); |
| | | |
| | | -- -------------------------------------------------------- |
| | | CREATE INDEX ix_cache_thread_expires ON cache_thread (expires); |
| | | |
| | | -- |
| | | -- Table structure for table cache_messages |
| | |
| | | user_id integer NOT NULL, |
| | | mailbox varchar(255) NOT NULL, |
| | | uid integer NOT NULL, |
| | | changed datetime NOT NULL default '0000-00-00 00:00:00', |
| | | expires datetime DEFAULT NULL, |
| | | data text NOT NULL, |
| | | flags integer NOT NULL DEFAULT '0', |
| | | PRIMARY KEY (user_id, mailbox, uid) |
| | | ); |
| | | |
| | | CREATE INDEX ix_cache_messages_changed ON cache_messages (changed); |
| | | CREATE INDEX ix_cache_messages_expires ON cache_messages (expires); |
| | | |
| | | -- |
| | | -- Table structure for table system |
| | | -- |
| | | |
| | | CREATE TABLE system ( |
| | | name varchar(64) NOT NULL PRIMARY KEY, |
| | | value text NOT NULL |
| | | ); |
| | | |
| | | INSERT INTO system (name, value) VALUES ('roundcube-version', '2014042900'); |