Database changes Dokeos 1.6

From Dokeos

Jump to: navigation, search

This is a list of all changes to be made to the dokeos database structure as a consequence of the new developments and of the database refactoring. The main reason for this is to have an overview of those changes so that the update / install script can be completed.

The database refactoring process will remove unused tables and fields but the update script will probably not do this. This is mainly because it is possible that some campusses might use (recycle) these unused fields and updating would have a very unpleasant side effect when the update script would remove the unused tables and fields. We have two solutions for this.

  • display a notice that in the update script that the update script does not perform the database optimalisation. This notice would can state wich tables / fields can be deleted
  • an option in the update process where you can choose to do (or not do) the optimalisation and that explicitly states which tables / fields are to be deleted (also mentioning that you loose all the data inside these tables/fields) and that you must be sure that you did not used these tables/fields for any custom development.

Contents

dokeos main database

system announcements

CREATE TABLE `system_announcement` (
 `id` int(11) NOT NULL auto_increment,
 `date_start` datetime NOT NULL default '0000-00-00 00:00:00',
 `date_end` datetime NOT NULL default '0000-00-00 00:00:00',
 `visible_teacher` enum('true','false') NOT NULL default 'false',
 `visible_student` enum('true','false') NOT NULL default 'false',
 `visible_guest` enum('true','false') NOT NULL default 'false',
 `title` varchar(250) NOT NULL default ,
 `content` text NOT NULL,
 PRIMARY KEY  (`id`)
) TYPE=MyISAM;

cleanup

Dropped `todo` and all `pma_*` tables only for new installs. Updated script (install_db.inc.php) accordingly. No change in upgrade script.

course database

group based agenda

  • alter 'last_tooledit.group_id' to 'last_tooledit.to_group_id' -> int(11) default NULL
  • add 'last_tooledit.to_user_id' -> int(11) default NULL
  • add 'last_tooledit.visible' -> int(11) NOT NULL default 1

dropbox

  • add 'dropbox_post.feedbackDate' -> datetime NOT NULL default '0000-00-00 00:00:00'
  • add 'dropbox_post.feedback' -> text default empty string

metadata

CREATE TABLE `metadata` (
  `eid` varchar(250) NOT NULL,      // entry-id, e.g. 'Document.1'
  `mdxmltext` text default '',      // MD-text, XML-formatted
  `md5` char(32) default '',        // hash-validator
  `htmlcache1` text default '',     // cached HTML, part 1
  `htmlcache2` text default '',     // cached HTML, part 2
  `indexabletext` text default '',  // indexable words, for search
  PRIMARY KEY (`eid`)           );
Personal tools