function opigno_scorm_update_8001 in Opigno SCORM 8
Sets cmi_key field length to 190.
To avoid error 1709 on MySQL < 5.7.7 without innodb_large_prefix.
File
- ./
opigno_scorm.install, line 269 - Module install/update functionality.
Code
function opigno_scorm_update_8001(&$sandbox) {
$table_name = 'opigno_scorm_scorm_cmi_data';
$db_schema = Database::getConnection()
->schema();
$db_schema
->dropPrimaryKey($table_name);
$db_schema
->dropIndex($table_name, 'cmi_key');
$spec = [
'description' => 'The CMI data key string.',
'type' => 'varchar',
'length' => 190,
'not null' => TRUE,
'default' => '',
];
$keys_new = [
'fields' => [
'cmi_key' => $spec,
],
'indexes' => [
'cmi_key' => [
'cmi_key',
],
],
];
$db_schema
->changeField($table_name, 'cmi_key', 'cmi_key', $spec, $keys_new);
$db_schema
->addPrimaryKey($table_name, [
'uid',
'scorm_id',
'cmi_key',
]);
}