Commit 8c43e7d16a1602181a42677fbdb7987d642a6e84

Authored by Michael Joseph
1 parent 38f4d627

SQL changes in preparation for the next release.


git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/trunk@2909 c91229c3-7414-0410-bfa2-8a42b809f60b
sql/mysql/install/tables.sql
... ... @@ -6,6 +6,7 @@ session_id CHAR(255),
6 6 lastused DATETIME,
7 7 ip CHAR(30)
8 8 ) TYPE = InnoDB;
  9 +ALTER TABLE active_sessions ADD INDEX session_id_idx (session_id);
9 10  
10 11 CREATE TABLE archive_restoration_request (
11 12 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
... ... @@ -89,6 +90,11 @@ full_path TEXT,
89 90 checked_out_user_id INTEGER,
90 91 status_id INTEGER
91 92 )TYPE = InnoDB;
  93 +ALTER TABLE documents ADD INDEX fk_document_type_id (document_type_id);
  94 +ALTER TABLE documents ADD INDEX fk_creator_id (creator_id);
  95 +ALTER TABLE documents ADD INDEX fk_folder_id (folder_id);
  96 +ALTER TABLE documents ADD INDEX fk_checked_out_user_id (checked_out_user_id);
  97 +ALTER TABLE documents ADD INDEX fk_status_id (status_id);
92 98  
93 99 CREATE TABLE document_archiving_link (
94 100 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
... ... @@ -132,7 +138,6 @@ CREATE TABLE document_text (
132 138 KEY document_text_document_id_indx (document_id)
133 139 ) Type = MyISAM;
134 140  
135   -
136 141 CREATE TABLE document_transactions (
137 142 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
138 143 document_id INTEGER NOT NULL,
... ... @@ -144,6 +149,9 @@ filename CHAR(255) NOT NULL,
144 149 comment CHAR(255) NOT NULL,
145 150 transaction_id INTEGER
146 151 )TYPE = InnoDB;
  152 +ALTER TABLE document_transactions ADD INDEX fk_document_id (document_id);
  153 +ALTER TABLE document_transactions ADD INDEX fk_user_id (user_id);
  154 +ALTER TABLE document_transactions ADD INDEX fk_transaction_id (transaction_id);
147 155  
148 156 CREATE TABLE document_transaction_types_lookup (
149 157 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
... ... @@ -174,6 +182,9 @@ parent_folder_ids TEXT,
174 182 full_path TEXT,
175 183 inherit_parent_folder_permission INTEGER
176 184 )TYPE = InnoDB;
  185 +ALTER TABLE folders ADD INDEX fk_parent_id (parent_id);
  186 +ALTER TABLE folders ADD INDEX fk_creator_id (creator_id);
  187 +ALTER TABLE folders ADD INDEX fk_unit_id (unit_id);
177 188  
178 189 CREATE TABLE folder_subscriptions (
179 190 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
... ... @@ -199,6 +210,8 @@ folder_id int(11) NOT NULL default '0',
199 210 document_type_id int(11) NOT NULL default '0',
200 211 UNIQUE KEY id (id)
201 212 ) TYPE=InnoDB;
  213 +ALTER TABLE folder_doctypes_link ADD INDEX fk_folder_id (folder_id);
  214 +ALTER TABLE folder_doctypes_link ADD INDEX fk_document_type_id (document_type_id);
202 215  
203 216 CREATE TABLE groups_folders_approval_link (
204 217 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
... ... @@ -216,6 +229,8 @@ folder_id INTEGER NOT NULL,
216 229 can_read BIT NOT NULL,
217 230 can_write BIT NOT NULL
218 231 )TYPE = InnoDB;
  232 +ALTER TABLE groups_folders_link ADD INDEX fk_group_id (group_id);
  233 +ALTER TABLE groups_folders_link ADD INDEX fk_folder_id (folder_id);
219 234  
220 235 CREATE TABLE groups_lookup (
221 236 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
... ... @@ -229,6 +244,8 @@ id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
229 244 group_id INTEGER NOT NULL,
230 245 unit_id INTEGER NOT NULL
231 246 )TYPE = InnoDB;
  247 +ALTER TABLE groups_units_link ADD INDEX fk_group_id (group_id);
  248 +ALTER TABLE groups_units_link ADD INDEX fk_unit_id (unit_id);
232 249  
233 250 CREATE TABLE help (
234 251 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
... ... @@ -243,12 +260,6 @@ url CHAR(100) NOT NULL,
243 260 rank INTEGER NOT NULL
244 261 )TYPE = InnoDB;
245 262  
246   -CREATE TABLE language_lookup (
247   -id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
248   -name CHAR(100) NOT NULL
249   -)TYPE = InnoDB;
250   -
251   -
252 263 CREATE TABLE metadata_lookup (
253 264 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
254 265 document_field_id INTEGER NOT NULL,
... ... @@ -291,8 +302,8 @@ id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
291 302 document_id INTEGER,
292 303 user_id INTEGER
293 304 ) Type = InnoDB;
294   -ALTER TABLE search_document_user_link ADD INDEX search_document_user_link_user_id_indx (user_id);
295   -ALTER TABLE search_document_user_link ADD INDEX search_document_user_link_document_id_indx (document_id);
  305 +ALTER TABLE search_document_user_link ADD INDEX fk_user_id (user_id);
  306 +ALTER TABLE search_document_user_link ADD INDEX fk_document_ids (document_id);
296 307  
297 308 CREATE TABLE status_lookup (
298 309 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
... ... @@ -326,6 +337,8 @@ id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
326 337 unit_id INTEGER NOT NULL,
327 338 organisation_id INTEGER NOT NULL
328 339 )TYPE = InnoDB;
  340 +ALTER TABLE units_organisations_link ADD INDEX fk_unit_id (unit_id);
  341 +ALTER TABLE units_organisations_link ADD INDEX fk_organisation_id (organisation_id);
329 342  
330 343 CREATE TABLE users (
331 344 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
... ... @@ -341,15 +354,15 @@ sms_notification BIT NOT NULL,
341 354 ldap_dn CHAR(255),
342 355 max_sessions INTEGER,
343 356 language_id INTEGER
344   -)
345   -TYPE = InnoDB;
  357 +) TYPE = InnoDB;
346 358  
347 359 CREATE TABLE users_groups_link (
348 360 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
349 361 user_id INTEGER NOT NULL,
350 362 group_id INTEGER NOT NULL
351   -)
352   -TYPE = InnoDB;
  363 +) TYPE = InnoDB;
  364 +ALTER TABLE users_groups_link ADD INDEX fk_user_id (user_id);
  365 +ALTER TABLE users_groups_link ADD INDEX fk_group_id (group_id);
353 366  
354 367 CREATE TABLE web_documents (
355 368 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
... ... @@ -523,22 +536,9 @@ insert into data_types (name) values ('FLOAT');
523 536 -- category field
524 537 INSERT INTO document_fields (name, data_type, is_generic) VALUES ("Category", "STRING", 1);
525 538  
526   --- supported languages (not really ;)
527   -INSERT INTO language_lookup (name) VALUES ("English");
528   -INSERT INTO language_lookup (name) VALUES ("Chinese");
529   -INSERT INTO language_lookup (name) VALUES ("Danish");
530   -INSERT INTO language_lookup (name) VALUES ("Deutsch");
531   -INSERT INTO language_lookup (name) VALUES ("Dutch");
532   -INSERT INTO language_lookup (name) VALUES ("Francais");
533   -INSERT INTO language_lookup (name) VALUES ("Hungarian");
534   -INSERT INTO language_lookup (name) VALUES ("Italian");
535   -INSERT INTO language_lookup (name) VALUES ("Norwegian");
536   -INSERT INTO language_lookup (name) VALUES ("Portuguese");
537   -INSERT INTO language_lookup (name) VALUES ("Spanish");
538   -
539 539 -- system settings
540 540 INSERT INTO system_settings (name, value) values ("lastIndexUpdate", "0");
541   -INSERT INTO system_settings (name, value) values ("knowledgeTreeVersion", "1.2.2");
  541 +INSERT INTO system_settings (name, value) values ("knowledgeTreeVersion", "1.2.3");
542 542  
543 543 -- document statuses
544 544 INSERT INTO web_documents_status_lookup (name) VALUES ("Pending");
... ...
sql/mysql/upgrade/1.2.2-to-1.2.3.sql 0 → 100644
  1 +UPDATE system_settings SET value="1.2.3" WHERE name="knowledgeTreeVersion";
  2 +
  3 +-- indexes on important FKs
  4 +ALTER TABLE active_sessions ADD INDEX session_id_idx (session_id);
  5 +ALTER TABLE documents ADD INDEX fk_document_type_id (document_type_id);
  6 +ALTER TABLE documents ADD INDEX fk_creator_id (creator_id);
  7 +ALTER TABLE documents ADD INDEX fk_folder_id (folder_id);
  8 +ALTER TABLE documents ADD INDEX fk_checked_out_user_id (checked_out_user_id);
  9 +ALTER TABLE documents ADD INDEX fk_status_id (status_id);
  10 +ALTER TABLE document_transactions ADD INDEX fk_document_id (document_id);
  11 +ALTER TABLE document_transactions ADD INDEX fk_user_id (user_id);
  12 +ALTER TABLE document_transactions ADD INDEX fk_transaction_id (transaction_id);
  13 +ALTER TABLE folders ADD INDEX fk_parent_id (parent_id);
  14 +ALTER TABLE folders ADD INDEX fk_creator_id (creator_id);
  15 +ALTER TABLE folders ADD INDEX fk_unit_id (unit_id);
  16 +ALTER TABLE folder_doctypes_link ADD INDEX fk_folder_id (folder_id);
  17 +ALTER TABLE folder_doctypes_link ADD INDEX fk_document_type_id (document_type_id);
  18 +ALTER TABLE groups_folders_link ADD INDEX fk_group_id (group_id);
  19 +ALTER TABLE groups_folders_link ADD INDEX fk_folder_id (folder_id);
  20 +ALTER TABLE groups_units_link ADD INDEX fk_group_id (group_id);
  21 +ALTER TABLE groups_units_link ADD INDEX fk_unit_id (unit_id);
  22 +ALTER TABLE search_document_user_link ADD INDEX fk_user_id (user_id);
  23 +ALTER TABLE search_document_user_link ADD INDEX fk_document_ids (document_id);
  24 +ALTER TABLE units_organisations_link ADD INDEX fk_unit_id (unit_id);
  25 +ALTER TABLE units_organisations_link ADD INDEX fk_organisation_id (organisation_id);
  26 +ALTER TABLE users_groups_link ADD INDEX fk_user_id (user_id);
  27 +ALTER TABLE users_groups_link ADD INDEX fk_group_id (group_id);
  28 +
  29 +-- char -> varchar
  30 +ALTER TABLE active_sessions MODIFY session_id VARCHAR(255), MODIFY ip VARCHAR(30);
  31 +ALTER TABLE archiving_type_lookup MODIFY name VARCHAR(100);
  32 +ALTER TABLE data_types MODIFY name VARCHAR(255);
  33 +ALTER TABLE documents MODIFY description VARCHAR(200);
  34 +ALTER TABLE document_fields MODIFY name VARCHAR(255), MODIFY data_type VARCHAR(100);
  35 +ALTER TABLE document_fields_link MODIFY value VARCHAR(255);
  36 +ALTER TABLE document_transactions MODIFY version VARCHAR(50), MODIFY ip VARCHAR(30), MODIFY filename VARCHAR(255), MODIFY comment VARCHAR(255);
  37 +ALTER TABLE document_transaction_types_lookup MODIFY name VARCHAR(100);
  38 +ALTER TABLE document_types_lookup MODIFY name VARCHAR(100);
  39 +ALTER TABLE folders MODIFY name VARCHAR(255), MODIFY description VARCHAR(255);
  40 +ALTER TABLE groups_lookup MODIFY name VARCHAR(100);
  41 +ALTER TABLE links MODIFY name VARCHAR(100), MODIFY url VARCHAR(100);
  42 +ALTER TABLE metadata_lookup MODIFY name VARCHAR(255);
  43 +ALTER TABLE mime_types MODIFY filetypes VARCHAR(100), MODIFY mimetypes VARCHAR(100), MODIFY icon_path VARCHAR(255);
  44 +ALTER TABLE organisations_lookup MODIFY name VARCHAR(100);
  45 +ALTER TABLE roles MODIFY name VARCHAR(255);
  46 +ALTER TABLE status_lookup MODIFY name VARCHAR(255);
  47 +ALTER TABLE system_settings MODIFY name VARCHAR(255), MODIFY value VARCHAR(255);
  48 +ALTER TABLE time_unit_lookup MODIFY name VARCHAR(100);
  49 +ALTER TABLE units_lookup MODIFY name VARCHAR(100);
  50 +ALTER TABLE users MODIFY username VARCHAR(255), MODIFY name VARCHAR(255), MODIFY password VARCHAR(255), MODIFY email VARCHAR(255), MODIFY mobile VARCHAR(255), MODIFY ldap_dn VARCHAR(255);
  51 +ALTER TABLE web_documents_status_lookup MODIFY name VARCHAR(50);
  52 +ALTER TABLE web_sites MODIFY web_site_name VARCHAR(100), MODIFY web_site_url VARCHAR(50);
0 53 \ No newline at end of file
... ...