How to change Migration Table name and use defined prefix.

3 0
5
Viewed: 26 657 times
Version: 1.1
Category: How-tos
Written by: Jorgee Jorgee
Updated by: jamband jamband
Created: Apr 10, 2013
Updated: 13 years ago

To accomplish the task of changing Migration table's name, by default tbl_migration, you need to add the following in your ./protected/config/console.php.

// Command Map
  'commandMap'=>array(
    'migrate'=>array(
      'class'=>'system.cli.commands.MigrateCommand',
      'migrationPath'=>'application.migrations',
      'migrationTable'=>'{{migration_history}}',
      'connectionID'=>'db',
      'templateFile'=>'application.migrations.template',
    ),
  ),

The {{ }} makes Yii to use the prefix defined in the 'db' component defined in the same file. This piece of code must be contained by the first array, do not put it under 'components' array.

'components'=>array(
  'db'=>array(
	'connectionString' => 'mysql:host=localhost;dbname=directar',
	'emulatePrepare' => true,
	'username' => 'root',
	'password' => '010101',
	'charset' => 'utf8',
    'tablePrefix' => 'directar_'
	),
  ....
  ),