mirror of
https://github.com/lennart-k/rustical.git
synced 2025-12-13 21:42:34 +00:00
48 lines
1.1 KiB
SQL
48 lines
1.1 KiB
SQL
DROP INDEX idx_calobjs_uid;
|
|
ALTER TABLE calendarobjects RENAME TO calendarobjects_old;
|
|
|
|
CREATE TABLE calendarobjects (
|
|
principal TEXT NOT NULL,
|
|
cal_id TEXT NOT NULL,
|
|
id TEXT NOT NULL, -- filename
|
|
ics TEXT NOT NULL,
|
|
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP,
|
|
deleted_at DATETIME,
|
|
|
|
-- For more efficient calendar-queries
|
|
first_occurence DATE,
|
|
last_occurence DATE,
|
|
etag TEXT,
|
|
object_type INTEGER NOT NULL, -- VEVENT(0)/VTODO(1)/VJOURNAL(2)
|
|
|
|
CONSTRAINT pk_calendarobject_id PRIMARY KEY (principal, cal_id, id),
|
|
CONSTRAINT fk_calendarobject_calendar FOREIGN KEY (principal, cal_id)
|
|
REFERENCES calendars (principal, id) ON DELETE CASCADE
|
|
);
|
|
|
|
INSERT INTO calendarobjects (
|
|
principal,
|
|
cal_id,
|
|
id,
|
|
ics,
|
|
updated_at,
|
|
deleted_at,
|
|
first_occurence,
|
|
last_occurence,
|
|
etag,
|
|
object_type
|
|
) SELECT
|
|
principal,
|
|
cal_id,
|
|
id,
|
|
ics,
|
|
updated_at,
|
|
deleted_at,
|
|
first_occurence,
|
|
last_occurence,
|
|
etag,
|
|
object_type
|
|
FROM calendarobjects_old;
|
|
|
|
DROP TABLE calendarobjects_old;
|