Примеры миграций
Создание таблицы
[php] class m120302_172329_create_tbl_news extends CDbMigration
{
public function up()
{
$this->createTable(‘el_slider’, array(
‘id’ => ‘pk’,
‘title’ => ‘VARCHAR(200) NOT NULL’,
‘desc’ => ‘text NOT NULL’,
‘link’ => ‘VARCHAR(200) NOT NULL’,
‘img’ => ‘VARCHAR(200) NOT NULL’,
‘show’ => ‘tinyint(1) DEFAULT 1’,
‘order’ => ‘int(10) DEFAULT 0’,
) , ‘ENGINE=InnoDB CHARSET=utf8’);
}
public function down()
{
dropTable(‘el_slider’);
}[/php]
Добавление записи в таблицу с помощью миграции
[php]
$this->insert(‘tbl_news’, array(
‘title’ => ‘Title 1’,
‘content’ => ‘Content 1’,
));[/php]
Изменение записи в таблице с помощью миграции
[php]
$this->update(‘tbl_news’, array(
‘title’ => ‘Updated title’
),
‘id=1’
);[/php]
Добавление колонки в таблицу с помощью миграции
[php]$this->addColumn(‘el_item_with_partner’, ‘option_id’, ‘int(11) DEFAULT 0’);[/php]
Переименование колонки
[php]$this->renameColumn(‘{{user}}’, ‘user_birthday’, ‘user_old_birthday’);[/php]
Удаление колонки
[php]$this->dropColumn(‘tbl_news’, ‘created_at’);[/php]