From df90c2c6f7effb8a8ea03a7076840bf32941e5ee Mon Sep 17 00:00:00 2001 From: "Paul S. Owen" Date: Mon, 11 Feb 2002 00:30:01 +0000 Subject: [PATCH] Few more updates to fix bugs and improve update in general ... DON'T run this if you've already run it, msaccess users should run this ONLY if they've not updated their primer DB since RC-2 was released git-svn-id: file:///svn/phpbb/trunk@2077 89ea8834-ac86-4346-8a33-228a782c2dd0 --- phpBB/update_to_RC3.php | 104 ++++++++++++++++++++++++++++++++++++---- 1 file changed, 96 insertions(+), 8 deletions(-) diff --git a/phpBB/update_to_RC3.php b/phpBB/update_to_RC3.php index fb383cbc4a..4eec041145 100644 --- a/phpBB/update_to_RC3.php +++ b/phpBB/update_to_RC3.php @@ -12,12 +12,52 @@ switch ( SQL_LAYER ) { case 'mysql': case 'mysql4': + $sql[] = "ALTER TABLE " . USERS_TABLE . " + ADD COLUMN user_session_time int(11) DEFAULT '0' NOT NULL, + ADD COLUMN user_session_page smallint(5) DEFAULT '0' NOT NULL, + ADD INDEX (user_session_time)"; + $sql[] = "ALTER TABLE " . SEARCH_TABLE . " + MODIFY search_id int(11) NOT NULL"; + $sql[] = "ALTER TABLE " . TOPICS_TABLE . " + MODIFY topic_moved_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL"; + $sql[] = "UPDATE " . THEMES_TABLE . " + SET head_stylesheet = 'subSilver.css' + WHERE template_name = 'subSilver'"; + $sql[] = "ALTER TABLE " . TOPICS_TABLE . " ADD COLUMN topic_first_post_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL, ADD INDEX (topic_first_post_id)"; + + $sql[] = "ALTER TABLE " . THEMES_NAME_TABLE . " ADD + tr_class1_name varchar(50) NULL, + tr_class2_name varchar(50) NULL, + tr_class3_name varchar(50) NULL, + th_class1_name varchar(50) NULL, + th_class2_name varchar(50) NULL, + th_class3_name varchar(50) NULL, + td_class1_name varchar(50) NULL, + td_class2_name varchar(50) NULL, + td_class3_name varchar(50) NULL, + span_class1_name varchar(50) NULL, + span_class2_name varchar(50) NULL, + span_class3_name varchar(50) NULL"; break; case 'postgresql': + $sql[] = "ALTER TABLE " . USERS_TABLE . " + ADD COLUMN user_session_time int4"; + $sql[] = "ALTER TABLE " . USERS_TABLE . " + ADD COLUMN user_session_page int2"; + $sql[] = "ALTER TABLE " . USERS_TABLE . " + ALTER COLUMN user_session_time SET DEFAULT '0'"; + $sql[] = "ALTER TABLE " . USERS_TABLE . " + ALTER COLUMN user_session_page SET DEFAULT '0'"; + $sql[] = "CREATE INDEX user_session_time_" . $table_prefix . "users_index + ON " . USERS_TABLE . " (user_session_time)"; + $sql[] = "UPDATE " . THEMES_TABLE . " + SET head_stylesheet = 'subSilver.css' + WHERE template_name = 'subSilver'"; + $sql[] = "ALTER TABLE " . TOPICS_TABLE . " ADD COLUMN topic_first_post_id int4"; $sql[] = "CREATE INDEX topic_first_post_id_" . $table_prefix . "topics_index @@ -26,18 +66,66 @@ switch ( SQL_LAYER ) case 'mssql-odbc': case 'mssql': + $sql[] = "ALTER TABLE " . USERS_TABLE . " ADD + user_session_time int NOT NULL, + user_session_page smallint NOT NULL, + CONSTRAINT [DF_" . $table_prefix . "users_user_session_time] DEFAULT (0) FOR [user_session_time], + CONSTRAINT [DF_" . $table_prefix . "users_user_session_page] DEFAULT (0) FOR [user_session_page]"; + $sql[] = "CREATE INDEX [IX_" . $table_prefix . "users] + ON [" . USERS_TABLE . "]([user_session_time]) ON [PRIMARY]"; + $sql[] = "UPDATE " . THEMES_TABLE . " + SET head_stylesheet = 'subSilver.css' + WHERE template_name = 'subSilver'"; + $sql[] = "DROP INDEX " . TOPICS_TABLE . ".IX_" . $table_prefix . "topics"; $sql[] = "ALTER TABLE " . TOPICS_TABLE . " ADD topic_first_post_id int NOT NULL, CONSTRAINT [DF_" . $table_prefix . "topics_topic_first_post_id] DEFAULT (0) FOR [topic_first_post_id]"; - $sql[] = "CREATE INDEX [IX_" . $table_prefix . "topics] - ON [" . TOPICS_TABLE . "]([topic_first_post_id]) ON [PRIMARY]"; + $sql[] = "CREATE INDEX [IX_" . $table_prefix . "topics] + ON [" . TOPICS_TABLE . "]([forum_id], [topic_type], [topic_first_post_id], [topic_last_post_id]) ON [PRIMARY]"; + $sql[] = "ALTER TABLE " . THEMES_NAME_TABLE . " ADD + tr_class1_name varchar(50) NULL, + tr_class2_name varchar(50) NULL, + tr_class3_name varchar(50) NULL, + th_class1_name varchar(50) NULL, + th_class2_name varchar(50) NULL, + th_class3_name varchar(50) NULL, + td_class1_name varchar(50) NULL, + td_class2_name varchar(50) NULL, + td_class3_name varchar(50) NULL, + span_class1_name varchar(50) NULL, + span_class2_name varchar(50) NULL, + span_class3_name varchar(50) NULL"; break; case 'msaccess': + $sql[] = "ALTER TABLE " . USERS_TABLE . " ADD + user_session_time int NOT NULL, + user_session_page smallint NOT NULL"; + $sql[] = "CREATE INDEX user_session_time + ON " . USERS_TABLE . " (user_session_time)"; + $sql[] = "UPDATE " . THEMES_TABLE . " + SET head_stylesheet = 'subSilver.css' + WHERE template_name = 'subSilver'"; + $sql[] = "ALTER TABLE " . TOPICS_TABLE . " ADD topic_first_post_id int NOT NULL"; $sql[] = "CREATE INDEX topic_first_post_id ON " . TOPICS_TABLE . " (topic_first_post_id)"; + + $sql[] = "ALTER TABLE " . THEMES_NAME_TABLE . " ADD + tr_class1_name varchar(50) NULL, + tr_class2_name varchar(50) NULL, + tr_class3_name varchar(50) NULL, + th_class1_name varchar(50) NULL, + th_class2_name varchar(50) NULL, + th_class3_name varchar(50) NULL, + td_class1_name varchar(50) NULL, + td_class2_name varchar(50) NULL, + td_class3_name varchar(50) NULL, + span_class1_name varchar(50) NULL, + span_class2_name varchar(50) NULL, + span_class3_name varchar(50) NULL"; + break; default: @@ -85,7 +173,7 @@ else $theme_id = $row['themes_id']; $sql = "UPDATE " . THEMES_TABLE . " - SET head_stylesheet = '', body_background = '', body_bgcolor = 'E5E5E5', body_text = '000000', body_link = '006699', body_vlink = '5493B4', body_alink = '', body_hlink = 'DD6900', tr_color1 = 'EFEFEF', tr_color2 = 'DEE3E7', tr_color3 = 'D1D7DC', tr_class1 = '', tr_class2 = '', tr_class3 = '', th_color1 = '98AAB1', th_color2 = '006699', th_color3 = 'FFFFFF', th_class1 = 'cellpic1.gif', th_class2 = 'cellpic3.gif', th_class3 = 'cellpic2.jpg', td_color1 = 'FAFAFA', td_color2 = 'FFFFFF', td_color3 = '', td_class1 = 'row1', td_class2 = 'row2', td_class3 = '', fontface1 = 'Verdana, Arial, Helvetica, sans-serif', fontface2 = 'Trebuchet MS', fontface3 = 'Courier, \'Courier New\', sans-serif', fontsize1 = 10, fontsize2 = 11, fontsize3 = 12, fontcolor1 = '444444', fontcolor2 = '006600', fontcolor3 = 'FFA34F', span_class1 = '', span_class2 = '', span_class3 = '' + SET head_stylesheet = '', body_background = '', body_bgcolor = 'E5E5E5', body_text = '000000', body_link = '006699', body_vlink = '5493B4', body_alink = '', body_hlink = 'DD6900', tr_color1 = 'EFEFEF', tr_color2 = 'DEE3E7', tr_color3 = 'D1D7DC', tr_class1 = '', tr_class2 = '', tr_class3 = '', th_color1 = '98AAB1', th_color2 = '006699', th_color3 = 'FFFFFF', th_class1 = 'cellpic1.gif', th_class2 = 'cellpic3.gif', th_class3 = 'cellpic2.jpg', td_color1 = 'FAFAFA', td_color2 = 'FFFFFF', td_color3 = '', td_class1 = 'row1', td_class2 = 'row2', td_class3 = '', fontface1 = 'Verdana, Arial, Helvetica, sans-serif', fontface2 = 'Trebuchet MS', fontface3 = 'Courier, ''Courier New'', sans-serif', fontsize1 = 10, fontsize2 = 11, fontsize3 = 12, fontcolor1 = '444444', fontcolor2 = '006600', fontcolor3 = 'FFA34F', span_class1 = '', span_class2 = '', span_class3 = '' WHERE themes_id = $theme_id"; if ( !($result = $db->sql_query($sql)) ) { @@ -100,10 +188,10 @@ else } } - $sql = "SELECT post_id, topic_id - FROM " . POSTS_TABLE . " - GROUP BY topic_id ASC - ORDER BY post_id ASC"; + $sql = "SELECT MIN(post_id) AS first_post_id, topic_id + FROM " . POSTS_TABLE . " + GROUP BY topic_id + ORDER BY topic_id ASC"; if ( !($result = $db->sql_query($sql)) ) { die("Couldn't obtain first post id list"); @@ -113,7 +201,7 @@ else { do { - $post_id = $row['post_id']; + $post_id = $row['first_post_id']; $topic_id = $row['topic_id']; $sql = "UPDATE " . TOPICS_TABLE . "