1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-08-15 05:04:09 +02:00

[ticket/11413] Schema changes and migration file

Notifications tables are dropped because phpBB currently does not have
any way to make the necessary changes to the DB schema (and no release
has yet been made with these changes).

This will fix the following bugs:
PHPBB3-11411
PHPBB3-11413
PHPBB3-11414
PHPBB3-11416
PHPBB3-11420

PHPBB3-11413
This commit is contained in:
Nathaniel Guse
2013-04-28 22:53:05 -05:00
parent c182ab0e7b
commit 198b992dce
10 changed files with 304 additions and 115 deletions

View File

@@ -642,17 +642,30 @@ END;;
# Table: 'phpbb_notification_types'
CREATE TABLE phpbb_notification_types (
notification_type VARCHAR(255) CHARACTER SET NONE DEFAULT '' NOT NULL,
notification_type_id INTEGER NOT NULL,
notification_type_name VARCHAR(255) CHARACTER SET NONE DEFAULT '' NOT NULL,
notification_type_enabled INTEGER DEFAULT 1 NOT NULL
);;
ALTER TABLE phpbb_notification_types ADD PRIMARY KEY (notification_type, notification_type_enabled);;
ALTER TABLE phpbb_notification_types ADD PRIMARY KEY (notification_type_id);;
CREATE UNIQUE INDEX phpbb_notification_types_type ON phpbb_notification_types(notification_type_name);;
CREATE GENERATOR phpbb_notification_types_gen;;
SET GENERATOR phpbb_notification_types_gen TO 0;;
CREATE TRIGGER t_phpbb_notification_types FOR phpbb_notification_types
BEFORE INSERT
AS
BEGIN
NEW.notification_type_id = GEN_ID(phpbb_notification_types_gen, 1);
END;;
# Table: 'phpbb_notifications'
CREATE TABLE phpbb_notifications (
notification_id INTEGER NOT NULL,
item_type VARCHAR(255) CHARACTER SET NONE DEFAULT '' NOT NULL,
notification_type_id INTEGER DEFAULT 0 NOT NULL,
item_id INTEGER DEFAULT 0 NOT NULL,
item_parent_id INTEGER DEFAULT 0 NOT NULL,
user_id INTEGER DEFAULT 0 NOT NULL,
@@ -663,7 +676,7 @@ CREATE TABLE phpbb_notifications (
ALTER TABLE phpbb_notifications ADD PRIMARY KEY (notification_id);;
CREATE INDEX phpbb_notifications_item_ident ON phpbb_notifications(item_type, item_id);;
CREATE INDEX phpbb_notifications_item_ident ON phpbb_notifications(notification_type_id, item_id);;
CREATE INDEX phpbb_notifications_user ON phpbb_notifications(user_id, notification_read);;
CREATE GENERATOR phpbb_notifications_gen;;
@@ -1290,7 +1303,7 @@ CREATE INDEX phpbb_topics_watch_notify_stat ON phpbb_topics_watch(notify_status)
# Table: 'phpbb_user_notifications'
CREATE TABLE phpbb_user_notifications (
item_type VARCHAR(255) CHARACTER SET NONE DEFAULT '' NOT NULL,
notification_type_id INTEGER DEFAULT 0 NOT NULL,
item_id INTEGER DEFAULT 0 NOT NULL,
user_id INTEGER DEFAULT 0 NOT NULL,
method VARCHAR(255) CHARACTER SET NONE DEFAULT '' NOT NULL,