Moving track_e_*.c_id filling queries to migrate-db to reduce execution by PHP. This updates chamilo_database_version but it doesn't change the structure in any way.

1.10.x
Yannick Warnier 11 years ago
parent 6956404f96
commit 8c6427d482
  1. 2
      main/install/database.sql
  2. 13
      main/install/migrate-db-1.9.0-1.10.0-pre.sql
  3. 29
      main/install/update-db-1.9.0-1.10.0.inc.php

@ -4729,5 +4729,5 @@ CREATE TABLE c_attendance_calendar_rel_group (
-- Version
LOCK TABLES settings_current WRITE;
UPDATE settings_current SET selected_value = '1.10.0.27' WHERE variable = 'chamilo_database_version';
UPDATE settings_current SET selected_value = '1.10.0.28' WHERE variable = 'chamilo_database_version';
UNLOCK TABLES;

@ -39,17 +39,28 @@ ALTER TABLE gradebook_category ADD COLUMN generate_certificates TINYINT NOT NULL
RENAME TABLE track_e_exercices TO track_e_exercises;
ALTER TABLE track_e_access ADD COLUMN c_id int NOT NULL;
UPDATE track_e_access SET c_id = (SELECT id FROM course WHERE code = access_cours_code);
ALTER TABLE track_e_default ADD COLUMN c_id int NOT NULL;
UPDATE track_e_default SET c_id = (SELECT id FROM course WHERE code = default_cours_code);
ALTER TABLE track_e_lastaccess ADD COLUMN c_id int NOT NULL;
UPDATE track_e_lastaccess SET c_id = (SELECT id FROM course WHERE code = access_cours_code);
ALTER TABLE track_e_exercises ADD COLUMN c_id int NOT NULL;
UPDATE track_e_exercises SET c_id = (SELECT id FROM course WHERE code = exe_cours_id);
ALTER TABLE track_e_downloads ADD COLUMN c_id int NOT NULL;
UPDATE track_e_downloads SET c_id = (SELECT id FROM course WHERE code = down_cours_id);
ALTER TABLE track_e_hotpotatoes ADD COLUMN c_id int NOT NULL;
UPDATE track_e_hotpotatoes SET c_id = (SELECT id FROM course WHERE code = exe_cours_id);
ALTER TABLE track_e_links ADD COLUMN c_id int NOT NULL;
UPDATE track_e_links SET c_id = (SELECT id FROM course WHERE code = links_cours_id);
ALTER TABLE track_e_course_access ADD COLUMN c_id int NOT NULL;
UPDATE track_e_course_access SET c_id = (SELECT id FROM course WHERE code = course_code);
ALTER TABLE track_e_online ADD COLUMN c_id int NOT NULL;
UPDATE track_e_online SET c_id = (SELECT id FROM course WHERE code = course);
ALTER TABLE track_e_attempt ADD COLUMN c_id int NOT NULL;
UPDATE track_e_attempt SET c_id = (SELECT id FROM course WHERE code = course_code);
ALTER TABLE track_e_default ADD COLUMN session_id int NOT NULL;
DELETE FROM settings_current WHERE variable = 'wcag_anysurfer_public_pages';
DELETE FROM settings_options WHERE variable = 'wcag_anysurfer_public_pages';
DELETE FROM settings_current WHERE variable = 'advanced_filemanager';
@ -113,4 +124,4 @@ CREATE TABLE IF NOT EXISTS c_student_publication_comment (id INT PRIMARY KEY NOT
CREATE TABLE IF NOT EXISTS c_attendance_calendar_rel_group (id int NOT NULL auto_increment PRIMARY KEY, c_id INT NOT NULL, group_id INT NOT NULL, calendar_id INT NOT NULL);
-- Do not move this query
UPDATE settings_current SET selected_value = '1.10.0.27' WHERE variable = 'chamilo_database_version';
UPDATE settings_current SET selected_value = '1.10.0.28' WHERE variable = 'chamilo_database_version';

@ -94,33 +94,8 @@ if (defined('SYSTEM_INSTALLATION')) {
}
if (INSTALL_TYPE_UPDATE == 'update') {
// Updating track tables with c_id
$res = iDatabase::query("SELECT id, code FROM $dbNameForm.course");
$result = iDatabase::query($sql);
$courses = Database::store_result($result);
foreach ($courses as $course) {
$courseId = $course['id'];
$courseCode = $course['code'];
$fields = array(
'track_e_access' => 'access_cours_code',
'track_e_default' => 'default_cours_code',
'track_e_lastaccess' => 'access_cours_code',
'track_e_downloads' => 'down_cours_id',
'track_e_hotpotatoes' => 'exe_cours_id',
'track_e_links' => 'links_cours_id',
'track_e_course_access' => 'course_code',
'track_e_online' => 'course',
'track_e_attempt' => 'course_code',
'track_e_exercises' => 'exe_cours_id'
);
foreach ($fields as $table => $key) {
$sql = "UPDATE $dbNameForm.$table SET c_id = $courseId
WHERE $key = '$courseCode'";
iDatabase::query($sql);
}
}
// Updating track tables with c_id -> moved to migrate-db
}
}

Loading…
Cancel
Save