mirror of
https://github.com/mudita/MuditaOS.git
synced 2026-04-20 15:07:17 -04:00
Add license headers to `h`, `c` and `sql` files as this files haven't been checked previously, script now to automatically updates current year in existing licenses.
83 lines
2.2 KiB
SQL
83 lines
2.2 KiB
SQL
-- Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
|
|
-- For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
|
|
|
|
CREATE TABLE IF NOT EXISTS contacts
|
|
(
|
|
_id INTEGER PRIMARY KEY,
|
|
name_id INTEGER,
|
|
numbers_id TEXT NOT NULL,
|
|
ring_id INTEGER,
|
|
address_id INTEGER,
|
|
speeddial TEXT NOT NULL,
|
|
FOREIGN KEY (name_id) REFERENCES contact_name (_id),
|
|
FOREIGN KEY (ring_id) REFERENCES contact_ringtones (_id)
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS contact_address
|
|
(
|
|
_id INTEGER PRIMARY KEY,
|
|
contact_id INTEGER,
|
|
address TEXT NOT NULL,
|
|
note TEXT NOT NULL,
|
|
mail TEXT NOT NULL,
|
|
FOREIGN KEY (contact_id) REFERENCES contacts (_id)
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS contact_groups
|
|
(
|
|
_id INTEGER PRIMARY KEY,
|
|
name TEXT NOT NULL UNIQUE
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS contact_match_groups
|
|
(
|
|
_id INTEGER PRIMARY KEY,
|
|
group_id INTEGER,
|
|
contact_id INTEGER,
|
|
FOREIGN KEY (group_id) REFERENCES contact_groups (_id)
|
|
ON DELETE CASCADE,
|
|
FOREIGN KEY (contact_id) REFERENCES contacts (_id)
|
|
ON DELETE CASCADE,
|
|
CONSTRAINT unique_group_contact
|
|
UNIQUE (group_id, contact_id)
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS contact_group_protected
|
|
(
|
|
_id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
group_id INTEGER NOT NULL UNIQUE
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS contact_name
|
|
(
|
|
_id INTEGER PRIMARY KEY,
|
|
contact_id INTEGER,
|
|
name_primary TEXT NOT NULL,
|
|
name_alternative TEXT NOT NULL,
|
|
FOREIGN KEY (contact_id) REFERENCES contacts (_id)
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS contact_number
|
|
(
|
|
_id INTEGER PRIMARY KEY,
|
|
contact_id INTEGER,
|
|
number_user TEXT NOT NULL,
|
|
number_e164 TEXT NOT NULL,
|
|
type INTEGER,
|
|
FOREIGN KEY (contact_id) REFERENCES contacts (_id)
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS contact_ringtones
|
|
(
|
|
_id INTEGER PRIMARY KEY,
|
|
contact_id INTEGER,
|
|
asset_path TEXT NOT NULL,
|
|
FOREIGN KEY (contact_id) REFERENCES contacts (_id) ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS contact_match_group_index_on_group
|
|
ON contact_match_groups (group_id);
|
|
CREATE INDEX IF NOT EXISTS contact_match_group_index_on_contact
|
|
ON contact_match_groups (contact_id);
|
|
|