123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439 |
- CREATE TABLE _SqliteDatabaseProperties (key TEXT,
- value TEXT,
- UNIQUE(key));
- CREATE TABLE Store (ROWID INTEGER PRIMARY KEY AUTOINCREMENT,
- name TEXT,
- default_alarm_offset INTEGER,
- type INTEGER,
- constraint_path TEXT,
- disabled INTEGER,
- external_id TEXT,
- persistent_id TEXT,
- flags INTEGER);
- CREATE TABLE sqlite_sequence(name,seq);
- CREATE TRIGGER delete_store_members AFTER DELETE ON Store
- BEGIN
- DELETE FROM Calendar WHERE store_id = OLD.ROWID;
- END;
- CREATE TRIGGER delete_store_changes AFTER DELETE ON Store
- BEGIN
- DELETE FROM CalendarChanges WHERE store_id = OLD.ROWID;DELETE FROM CalendarItemChanges WHERE store_id = OLD.ROWID;DELETE FROM AlarmChanges WHERE store_id = OLD.ROWID;DELETE FROM RecurrenceChanges WHERE store_id = OLD.ROWID;DELETE FROM ParticipantChanges WHERE store_id = OLD.ROWID;
- END;
- CREATE INDEX StoreExternalId on Store(external_id);
- CREATE TABLE Calendar (ROWID INTEGER PRIMARY KEY AUTOINCREMENT,
- store_id INTEGER,
- title TEXT,
- flags INTEGER,
- color TEXT,
- color_is_display INTEGER,
- type TEXT,
- supported_entity_types INTEGER,
- external_id TEXT,
- external_mod_tag TEXT,
- external_id_tag TEXT,
- external_rep BLOB,
- display_order INTEGER,
- UUID TEXT,
- shared_owner_name TEXT,
- shared_owner_email TEXT,
- sharing_status INTEGER,
- sharing_invitation_response INTEGER,
- published_URL TEXT,
- is_published INTEGER,
- invitation_status INTEGER,
- sync_token TEXT,
- self_identity_id INTEGER,
- self_identity_email TEXT,
- owner_identity_id INTEGER,
- owner_identity_email TEXT);
- CREATE TABLE CalendarChanges (record INTEGER,
- type INTEGER,
- store_id INTEGER,
- flags INTEGER,
- external_id TEXT,
- external_id_tag TEXT,
- UUID TEXT);
- CREATE INDEX CalendarExternalId on Calendar(external_id);
- CREATE INDEX CalendarStoreId on Calendar(store_id);
- CREATE INDEX CalendarUUID on Calendar(UUID);
- CREATE TRIGGER delete_calendar_members AFTER DELETE ON Calendar
- BEGIN
- DELETE FROM OccurrenceCacheDays where calendar_id = OLD.ROWID;DELETE FROM OccurrenceCache where calendar_id = OLD.ROWID;DELETE FROM CalendarItem WHERE calendar_id = OLD.ROWID;DELETE FROM OccurrenceCacheDays WHERE count = 0;DELETE FROM Notification WHERE calendar_id = OLD.ROWID; DELETE FROM sharee where owner_id = OLD.ROWID;
- END;
- CREATE TABLE Recurrence (ROWID INTEGER PRIMARY KEY AUTOINCREMENT,
- frequency INTEGER,
- interval INTEGER,
- week_start INTEGER,
- count INTEGER,
- cached_end_date REAL,
- cached_end_date_tz TEXT,
- end_date REAL,
- specifier TEXT,
- by_month_months INTEGER,
- owner_id INTEGER,
- external_id TEXT,
- external_mod_tag TEXT,
- external_id_tag TEXT,
- external_rep BLOB,
- UUID TEXT);
- CREATE TABLE RecurrenceChanges (record INTEGER,
- type INTEGER,
- external_id TEXT,
- store_id INTEGER,
- event_id_tomb INTEGER,
- calendar_id INTEGER,
- end_date_tomb REAL,
- UUID TEXT);
- CREATE INDEX RecurrenceEndCountIndex on Recurrence(end_date,
- count);
- CREATE INDEX RecurrenceExternalId on Recurrence(external_id);
- CREATE INDEX RecurrenceOwnerIdIndex on Recurrence(owner_id);
- CREATE INDEX RecurrenceUUID on Recurrence(UUID);
- CREATE TABLE Alarm (ROWID INTEGER PRIMARY KEY AUTOINCREMENT,
- trigger_date REAL,
- trigger_interval INTEGER,
- type INTEGER,
- owner_id INTEGER,
- external_id TEXT,
- external_mod_tag TEXT,
- external_id_tag TEXT,
- external_rep BLOB,
- UUID TEXT,
- proximity INTEGER,
- disabled INTEGER,
- location_id INTEGER,
- acknowledgedDate REAL,
- default_alarm INTEGER,
- orig_alarm_id INTEGER);
- CREATE TABLE AlarmChanges (record INTEGER,
- type INTEGER,
- owner_id INTEGER,
- external_id TEXT,
- store_id INTEGER,
- calendar_id INTEGER,
- UUID TEXT);
- CREATE INDEX AlarmExternalId on Alarm(external_id);
- CREATE INDEX AlarmUUID on Alarm(UUID);
- CREATE INDEX AlarmOwnerId on Alarm(owner_id);
- CREATE INDEX AlarmTriggerDate on Alarm(trigger_date);
- CREATE TABLE Participant (ROWID INTEGER PRIMARY KEY AUTOINCREMENT,
- entity_type INTEGER,
- type INTEGER,
- status INTEGER,
- pending_status INTEGER,
- role INTEGER,
- identity_id INTEGER,
- owner_id INTEGER,
- external_rep BLOB,
- UUID TEXT,
- email TEXT,
- is_self INTEGER);
- CREATE TABLE ParticipantChanges (record INTEGER,
- type INTEGER,
- entity_type INTEGER,
- owner_id INTEGER,
- UUID TEXT,
- email TEXT,
- store_id INTEGER,
- calendar_id INTEGER);
- CREATE INDEX ParticipantUUID on Participant(UUID);
- CREATE INDEX ParticipantEntityType on Participant(entity_type);
- CREATE INDEX ParticipantOwnerId on Participant(owner_id);
- CREATE TABLE Identity (display_name TEXT,
- address TEXT,
- first_name TEXT,
- last_name TEXT,
- UNIQUE (display_name,
- address,
- first_name,
- last_name));
- CREATE TABLE EventAction (ROWID INTEGER PRIMARY KEY AUTOINCREMENT,
- event_id INTEGER,
- external_id TEXT,
- external_mod_tag TEXT,
- external_folder_id TEXT,
- external_schedule_id TEXT,
- external_rep BLOB);
- CREATE TABLE EventActionChanges (record INTEGER,
- type INTEGER,
- event_id INTEGER,
- external_id TEXT,
- external_folder_id TEXT,
- external_schedule_id TEXT,
- store_id INTEGER,
- calendar_id INTEGER);
- CREATE INDEX EventActionEventId on EventAction(event_id);
- CREATE INDEX EventActionExternalId on EventAction(external_id);
- CREATE INDEX EventActionFolderId on EventAction(external_folder_id);
- CREATE TABLE CalendarItem (ROWID INTEGER PRIMARY KEY AUTOINCREMENT,
- summary TEXT,
- location_id INTEGER,
- description TEXT,
- start_date REAL,
- start_tz TEXT,
- end_date REAL,
- all_day INTEGER,
- calendar_id INTEGER,
- orig_item_id INTEGER,
- orig_date REAL,
- organizer_id INTEGER,
- self_attendee_id INTEGER,
- status INTEGER,
- invitation_status INTEGER,
- availability INTEGER,
- privacy_level INTEGER,
- url TEXT,
- last_modified REAL,
- sequence_num INTEGER,
- birthday_id INTEGER,
- modified_properties INTEGER,
- external_tracking_status INTEGER,
- external_id TEXT,
- external_mod_tag TEXT,
- unique_identifier TEXT,
- external_schedule_id TEXT,
- external_rep BLOB,
- response_comment TEXT,
- hidden INTEGER,
- has_recurrences INTEGER,
- has_attendees INTEGER,
- UUID TEXT,
- entity_type INTEGER,
- priority INTEGER,
- due_date REAL,
- due_tz TEXT,
- due_all_day INTEGER,
- completion_date REAL,
- creation_date REAL,
- conference TEXT,
- display_order INTEGER,
- created_by_id INTEGER,
- modified_by_id INTEGER,
- shared_item_created_date REAL,
- shared_item_created_tz TEXT,
- shared_item_modified_date REAL,
- shared_item_modified_tz TEXT,
- invitation_changed_properties INTEGER,
- default_alarm_removed INTEGER,
- phantom_master INTEGER);
- CREATE TABLE CalendarItemChanges (record INTEGER,
- type INTEGER,
- calendar_id INTEGER,
- external_id TEXT,
- unique_identifier TEXT,
- UUID TEXT,
- entity_type INTEGER,
- store_id INTEGER,
- has_dirty_instance_attributes INTEGER,
- old_calendar_id INTEGER,
- old_external_id TEXT);
- CREATE INDEX EventStatus on CalendarItem(status);
- CREATE INDEX EventHiddenEndDateStartDate on CalendarItem(hidden,
- end_date,
- start_date);
- CREATE INDEX EventCalendarIdHiddenEndDateStartDate on CalendarItem(calendar_id,
- hidden,
- end_date,
- start_date);
- CREATE INDEX EventExternalIdCalId on CalendarItem(external_id,
- calendar_id);
- CREATE INDEX EventExternalUniqueIdentifierCalId on CalendarItem(unique_identifier,
- calendar_id);
- CREATE INDEX EventUUID on CalendarItem(UUID);
- CREATE INDEX CalendarItemDueDate on CalendarItem(due_date);
- CREATE INDEX CalendarItemEntityTypeCompletionDate on CalendarItem(entity_type,
- completion_date);
- CREATE INDEX CalendarItemEntityTypeCalendarIdCompletionDateCreationDate on CalendarItem(entity_type,
- calendar_id,
- completion_date,
- creation_date);
- CREATE INDEX EventInvitationStatus on CalendarItem(invitation_status);
- CREATE INDEX CalendarItemOriginalItemId on CalendarItem(orig_item_id);
- CREATE INDEX CalendarItemOriginalDate on CalendarItem(orig_date);
- CREATE TRIGGER delete_event_alarms_recurs AFTER DELETE ON CalendarItem
- BEGIN
- DELETE FROM Location WHERE item_owner_id = OLD.ROWID;DELETE FROM Alarm WHERE owner_id = OLD.ROWID;DELETE FROM Recurrence WHERE owner_id = OLD.ROWID;DELETE FROM Participant WHERE owner_id = OLD.ROWID;DELETE FROM ExceptionDate WHERE owner_id = OLD.ROWID;DELETE FROM OccurrenceCache WHERE event_id = OLD.ROWID;DELETE FROM OccurrenceCacheDays WHERE count = 0;DELETE FROM Attachment WHERE owner_id = OLD.ROWID;
- END;
- CREATE TABLE ExceptionDate (ROWID INTEGER PRIMARY KEY AUTOINCREMENT,
- owner_id INTEGER,
- date REAL,
- sync_order INTEGER);
- CREATE INDEX ExceptionDateOwnerId on ExceptionDate(owner_id);
- CREATE TABLE Attachment (ROWID INTEGER PRIMARY KEY AUTOINCREMENT,
- owner_id INTEGER,
- external_id TEXT,
- external_mod_tag TEXT,
- external_rep BLOB,
- url TEXT,
- UUID TEXT,
- data BLOB,
- format TEXT,
- is_binary INTEGER,
- filename TEXT,
- local_url TEXT,
- file_size INTEGER);
- CREATE TABLE AttachmentChanges (record INTEGER,
- type INTEGER,
- owner_id INTEGER,
- external_id TEXT,
- external_mod_tag TEXT,
- UUID TEXT,
- store_id INTEGER,
- calendar_id INTEGER);
- CREATE INDEX AttachmentEventId on Attachment(owner_id);
- CREATE INDEX AttachmentUUID on Attachment(UUID);
- CREATE TABLE Category (ROWID INTEGER PRIMARY KEY AUTOINCREMENT,
- name TEXT,
- entity_type INTEGER,
- hidden INTEGER);
- CREATE UNIQUE INDEX CategoryNameAndType on Category(name,
- entity_type);
- CREATE TABLE CategoryLink (ROWID INTEGER PRIMARY KEY AUTOINCREMENT,
- owner_id INTEGER,
- category_id INTEGER);
- CREATE INDEX OwnerID on CategoryLink(owner_id);
- CREATE TABLE Location (ROWID INTEGER PRIMARY KEY AUTOINCREMENT,
- title TEXT,
- latitude INTEGER,
- longitude INTEGER,
- address_book_id TEXT,
- radius INTEGER,
- item_owner_id INTEGER,
- alarm_owner_id INTEGER);
- CREATE INDEX LocationOwnerItemId on Location(item_owner_id);
- CREATE TABLE Sharee (ROWID INTEGER PRIMARY KEY AUTOINCREMENT,
- owner_id INTEGER,
- external_id TEXT,
- external_rep BLOB,
- UUID TEXT,
- identity_id INTEGER,
- status INTEGER,
- access_level INTEGER);
- CREATE TABLE ShareeChanges (record INTEGER,
- type INTEGER,
- owner_id INTEGER,
- UUID TEXT,
- status INTEGER,
- access_level INTEGER,
- display_name TEXT,
- address TEXT,
- store_id INTEGER,
- calendar_id INTEGER,
- first_name TEXT,
- last_name TEXT);
- CREATE INDEX ShareeUUID on Sharee(UUID);
- CREATE INDEX ShareeOwnerId on Sharee(owner_id);
- CREATE INDEX ShareeStatus on Sharee(status);
- CREATE INDEX ShareeAccessLevel on Sharee(access_level);
- CREATE TABLE Notification (ROWID INTEGER PRIMARY KEY AUTOINCREMENT,
- entity_type INTEGER,
- calendar_id INTEGER,
- external_id TEXT,
- external_mod_tag TEXT,
- UUID TEXT,
- summary TEXT,
- creation_date REAL,
- last_modified REAL,
- status INTEGER,
- host_url TEXT,
- in_reply_to TEXT,
- identity_id INTEGER,
- alerted INTEGER);
- CREATE TABLE NotificationChanges (record INTEGER,
- type INTEGER,
- entity_type INTEGER,
- calendar_id INTEGER,
- external_id TEXT,
- UUID TEXT,
- store_id INTEGER);
- CREATE INDEX NotificationUUIDCalendarId on Notification(UUID,
- calendar_id);
- CREATE INDEX NotificationEntityType on Notification(entity_type);
- CREATE INDEX NotificationExternalIDCalendarId on Notification(external_id,
- calendar_id);
- CREATE INDEX NotificationCalendarId on Notification(calendar_id);
- CREATE TRIGGER delete_resource_changes_for_notification AFTER DELETE ON Notification
- BEGIN
- DELETE FROM ResourceChange WHERE notification_id NOT IN (SELECT ROWID FROM Notification WHERE entity_type = 17);
- END;
- CREATE TABLE ResourceChange (ROWID INTEGER PRIMARY KEY AUTOINCREMENT,
- notification_id INTEGER,
- calendar_id INTEGER,
- calendar_item_id INTEGER,
- identity_id INTEGER,
- change_type INTEGER,
- timestamp REAL,
- changed_properties INTEGER,
- create_count INTEGER,
- update_count INTEGER,
- delete_count INTEGER,
- deleted_summary TEXT,
- deleted_start_date REAL,
- alerted INTEGER,
- public_status INTEGER);
- CREATE INDEX ResourceChangeNotificationID on ResourceChange(notification_id);
- CREATE INDEX ResourceChangeCalendarID on ResourceChange(calendar_item_id);
- CREATE INDEX ResourceChangeCalendarItemID on ResourceChange(calendar_item_id);
- CREATE INDEX ResourceChangeIdentityID on ResourceChange(identity_id);
- CREATE TRIGGER delete_notification_calendar AFTER DELETE ON ResourceChange
- BEGIN
- DELETE FROM ResourceChange WHERE calendar_id NOT IN (SELECT ROWID FROM Calendar);
- END;
- CREATE TABLE OccurrenceCache (day REAL,
- event_id INTEGER,
- calendar_id INTEGER,
- store_id INTEGER,
- occurrence_date REAL,
- occurrence_start_date REAL,
- occurrence_end_date REAL);
- CREATE TABLE OccurrenceCacheDays (calendar_id INTEGER,
- store_id INTEGER,
- day REAL,
- count INTEGER,
- PRIMARY KEY (calendar_id,
- day));
- CREATE TRIGGER update_cache_days_after_delete AFTER DELETE ON OccurrenceCache
- BEGIN
- UPDATE OccurrenceCacheDays SET count = count - 1 WHERE day = OLD.day AND calendar_id = OLD.calendar_id;UPDATE OccurrenceCacheDays SET count = count - 1 WHERE day = OLD.day AND calendar_id = -2;
- END;
- CREATE TRIGGER update_cache_days_after_insert AFTER INSERT ON OccurrenceCache
- BEGIN
- REPLACE INTO OccurrenceCacheDays VALUES (NEW.calendar_id,
- NEW.store_id,
- NEW.day,
- 1 + IFNULL((SELECT count FROM OccurrenceCacheDays WHERE day = NEW.day AND calendar_id = NEW.calendar_id),
- 0));
- REPLACE INTO OccurrenceCacheDays VALUES (-2,
- -2,
- NEW.day,
- 1 + IFNULL((SELECT count FROM OccurrenceCacheDays WHERE day = NEW.day AND calendar_id = -2),
- 0));
- END;
- CREATE TRIGGER update_cache_days_after_update AFTER UPDATE OF day ON OccurrenceCache
- BEGIN
- REPLACE INTO OccurrenceCacheDays VALUES (NEW.calendar_id,
- NEW.store_id,
- NEW.day,
- 1 + IFNULL((SELECT count FROM OccurrenceCacheDays WHERE day = NEW.day AND calendar_id = NEW.calendar_id),
- 0));
- REPLACE INTO OccurrenceCacheDays VALUES (-2,
- -2,
- NEW.day,
- 1 + IFNULL((SELECT count FROM OccurrenceCacheDays WHERE day = NEW.day AND calendar_id = -2),
- 0));
- UPDATE OccurrenceCacheDays SET count = count - 1 WHERE day = OLD.day AND calendar_id = OLD.calendar_id;UPDATE OccurrenceCacheDays SET count = count - 1 WHERE day = OLD.day AND calendar_id = -2;
- END;
- CREATE INDEX OccurrenceCacheDay on OccurrenceCache(day);
- CREATE INDEX OccurrenceCacheDayCalendarId on OccurrenceCache(day,
- calendar_id);
- CREATE INDEX OccurrenceCacheDayStoreId on OccurrenceCache(day,
- store_id);
- CREATE INDEX OccurrenceCacheOccurrenceDate on OccurrenceCache(occurrence_date);
- CREATE INDEX OccurrenceCacheStoreIdOccurrenceDate on OccurrenceCache(store_id,
- occurrence_date);
- CREATE INDEX OccurrenceCacheCalendarIdOccurrenceDate on OccurrenceCache(calendar_id,
- occurrence_date);
- CREATE INDEX OccurrenceCacheEventId on OccurrenceCache(event_id);
- CREATE INDEX OccurrenceCacheDaysStoreIdDay on OccurrenceCacheDays(store_id,
- day);
- CREATE INDEX OccurrenceCacheDaysCount on OccurrenceCacheDays(count);
|