18 lines
720 B
SQL
18 lines
720 B
SQL
CREATE TABLE IF NOT EXISTS notifications (
|
|
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
|
|
sender_id INT UNSIGNED NOT NULL,
|
|
title VARCHAR(255) NOT NULL,
|
|
body TEXT NOT NULL,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
FOREIGN KEY (sender_id) REFERENCES users(id) ON DELETE CASCADE
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
|
|
CREATE TABLE IF NOT EXISTS notification_recipients (
|
|
notification_id INT UNSIGNED NOT NULL,
|
|
user_id INT UNSIGNED NOT NULL,
|
|
read_at DATETIME DEFAULT NULL,
|
|
PRIMARY KEY (notification_id, user_id),
|
|
FOREIGN KEY (notification_id) REFERENCES notifications(id) ON DELETE CASCADE,
|
|
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|