SQL for labels. #102.
This commit is contained in:
parent
01e79d7c5d
commit
f95ab32e24
@ -15,6 +15,7 @@
|
||||
<file>sql/db_update_mysql_12_13.sql</file>
|
||||
<file>sql/db_update_mysql_13_14.sql</file>
|
||||
<file>sql/db_update_mysql_14_15.sql</file>
|
||||
<file>sql/db_update_mysql_15_16.sql</file>
|
||||
|
||||
<file>sql/db_init_sqlite.sql</file>
|
||||
<file>sql/db_update_sqlite_1_2.sql</file>
|
||||
@ -31,5 +32,6 @@
|
||||
<file>sql/db_update_sqlite_12_13.sql</file>
|
||||
<file>sql/db_update_sqlite_13_14.sql</file>
|
||||
<file>sql/db_update_sqlite_14_15.sql</file>
|
||||
<file>sql/db_update_sqlite_15_16.sql</file>
|
||||
</qresource>
|
||||
</RCC>
|
@ -12,7 +12,7 @@ CREATE TABLE IF NOT EXISTS Information (
|
||||
inf_value TEXT NOT NULL
|
||||
);
|
||||
-- !
|
||||
INSERT INTO Information VALUES (1, 'schema_version', '15');
|
||||
INSERT INTO Information VALUES (1, 'schema_version', '16');
|
||||
-- !
|
||||
CREATE TABLE IF NOT EXISTS Accounts (
|
||||
id INTEGER PRIMARY KEY,
|
||||
@ -144,4 +144,20 @@ CREATE TABLE IF NOT EXISTS MessageFiltersInFeeds (
|
||||
FOREIGN KEY (account_id) REFERENCES Accounts (id) ON DELETE CASCADE
|
||||
);
|
||||
-- !
|
||||
UPDATE Information SET inf_value = '15' WHERE inf_key = 'schema_version';
|
||||
CREATE TABLE IF NOT EXISTS Labels (
|
||||
id INTEGER PRIMARY KEY,
|
||||
name TEXT NOT NULL CHECK (name != ''),
|
||||
color VARCHAR(7),
|
||||
custom_id TEXT,
|
||||
account_id INTEGER NOT NULL,
|
||||
|
||||
FOREIGN KEY (account_id) REFERENCES Accounts (id)
|
||||
);
|
||||
-- !
|
||||
CREATE TABLE IF NOT EXISTS LabelsInMessages (
|
||||
label TEXT NOT NULL, /* Custom ID of label. */
|
||||
message TEXT NOT NULL, /* Custom ID of message. */
|
||||
account_id INTEGER NOT NULL,
|
||||
|
||||
FOREIGN KEY (account_id) REFERENCES Accounts (id) ON DELETE CASCADE
|
||||
);
|
@ -6,7 +6,7 @@ CREATE TABLE IF NOT EXISTS Information (
|
||||
inf_value TEXT NOT NULL
|
||||
);
|
||||
-- !
|
||||
INSERT INTO Information VALUES (1, 'schema_version', '15');
|
||||
INSERT INTO Information VALUES (1, 'schema_version', '16');
|
||||
-- !
|
||||
CREATE TABLE IF NOT EXISTS Accounts (
|
||||
id INTEGER PRIMARY KEY,
|
||||
@ -135,5 +135,23 @@ CREATE TABLE IF NOT EXISTS MessageFiltersInFeeds (
|
||||
account_id INTEGER NOT NULL,
|
||||
|
||||
FOREIGN KEY (filter) REFERENCES MessageFilters (id) ON DELETE CASCADE,
|
||||
FOREIGN KEY (account_id) REFERENCES Accounts (id) ON DELETE CASCADE
|
||||
);
|
||||
-- !
|
||||
CREATE TABLE IF NOT EXISTS Labels (
|
||||
id INTEGER PRIMARY KEY,
|
||||
name TEXT NOT NULL CHECK (name != ''),
|
||||
color VARCHAR(7),
|
||||
custom_id TEXT,
|
||||
account_id INTEGER NOT NULL,
|
||||
|
||||
FOREIGN KEY (account_id) REFERENCES Accounts (id)
|
||||
);
|
||||
-- !
|
||||
CREATE TABLE IF NOT EXISTS LabelsInMessages (
|
||||
label TEXT NOT NULL, /* Custom ID of label. */
|
||||
message TEXT NOT NULL, /* Custom ID of message. */
|
||||
account_id INTEGER NOT NULL,
|
||||
|
||||
FOREIGN KEY (account_id) REFERENCES Accounts (id) ON DELETE CASCADE
|
||||
);
|
19
resources/sql/db_update_mysql_15_16.sql
Normal file
19
resources/sql/db_update_mysql_15_16.sql
Normal file
@ -0,0 +1,19 @@
|
||||
CREATE TABLE IF NOT EXISTS Labels (
|
||||
id INTEGER PRIMARY KEY,
|
||||
name TEXT NOT NULL CHECK (name != ''),
|
||||
color VARCHAR(7),
|
||||
custom_id TEXT,
|
||||
account_id INTEGER NOT NULL,
|
||||
|
||||
FOREIGN KEY (account_id) REFERENCES Accounts (id)
|
||||
);
|
||||
-- !
|
||||
CREATE TABLE IF NOT EXISTS LabelsInMessages (
|
||||
label TEXT NOT NULL, /* Custom ID of label. */
|
||||
message TEXT NOT NULL, /* Custom ID of message. */
|
||||
account_id INTEGER NOT NULL,
|
||||
|
||||
FOREIGN KEY (account_id) REFERENCES Accounts (id) ON DELETE CASCADE
|
||||
);
|
||||
-- !
|
||||
UPDATE Information SET inf_value = '16' WHERE inf_key = 'schema_version';
|
19
resources/sql/db_update_sqlite_15_16.sql
Normal file
19
resources/sql/db_update_sqlite_15_16.sql
Normal file
@ -0,0 +1,19 @@
|
||||
CREATE TABLE IF NOT EXISTS Labels (
|
||||
id INTEGER PRIMARY KEY,
|
||||
name TEXT NOT NULL CHECK (name != ''),
|
||||
color VARCHAR(7),
|
||||
custom_id TEXT,
|
||||
account_id INTEGER NOT NULL,
|
||||
|
||||
FOREIGN KEY (account_id) REFERENCES Accounts (id)
|
||||
);
|
||||
-- !
|
||||
CREATE TABLE IF NOT EXISTS LabelsInMessages (
|
||||
label TEXT NOT NULL, /* Custom ID of label. */
|
||||
message TEXT NOT NULL, /* Custom ID of message. */
|
||||
account_id INTEGER NOT NULL,
|
||||
|
||||
FOREIGN KEY (account_id) REFERENCES Accounts (id) ON DELETE CASCADE
|
||||
);
|
||||
-- !
|
||||
UPDATE Information SET inf_value = '16' WHERE inf_key = 'schema_version';
|
@ -132,7 +132,7 @@
|
||||
#define APP_DB_SQLITE_FILE "database.db"
|
||||
|
||||
// Keep this in sync with schema versions declared in SQL initialization code.
|
||||
#define APP_DB_SCHEMA_VERSION "15"
|
||||
#define APP_DB_SCHEMA_VERSION "16"
|
||||
#define APP_DB_UPDATE_FILE_PATTERN "db_update_%1_%2_%3.sql"
|
||||
#define APP_DB_COMMENT_SPLIT "-- !\n"
|
||||
#define APP_DB_NAME_PLACEHOLDER "##"
|
||||
|
Loading…
x
Reference in New Issue
Block a user