Yii2 framework backup
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

133 lines
3.1 KiB

<?php
/**
* @link http://www.yiiframework.com/
* @copyright Copyright (c) 2008 Yii Software LLC
* @license http://www.yiiframework.com/license/
*/
return <<<CODE
<?php
use yii\db\Migration;
/**
* Handles adding columns to table `{table}`.
* Has foreign keys to the tables:
*
* - `user`
* - `product`
* - `user_order`
*/
class {$class} extends Migration
{
/**
* @inheritdoc
*/
public function up()
{
\$this->addColumn('{table}', 'user_id', \$this->integer());
\$this->addColumn('{table}', 'product_id', \$this->integer()->unsigned()->notNull());
\$this->addColumn('{table}', 'order_id', \$this->integer()->notNull());
\$this->addColumn('{table}', 'created_at', \$this->dateTime()->notNull());
// creates index for column `user_id`
\$this->createIndex(
'idx-{table}-user_id',
'{table}',
'user_id'
);
// add foreign key for table `user`
\$this->addForeignKey(
'fk-{table}-user_id',
'{table}',
'user_id',
'user',
'id',
'CASCADE'
);
// creates index for column `product_id`
\$this->createIndex(
'idx-{table}-product_id',
'{table}',
'product_id'
);
// add foreign key for table `product`
\$this->addForeignKey(
'fk-{table}-product_id',
'{table}',
'product_id',
'product',
'id',
'CASCADE'
);
// creates index for column `order_id`
\$this->createIndex(
'idx-{table}-order_id',
'{table}',
'order_id'
);
// add foreign key for table `user_order`
\$this->addForeignKey(
'fk-{table}-order_id',
'{table}',
'order_id',
'user_order',
'id',
'CASCADE'
);
}
/**
* @inheritdoc
*/
public function down()
{
// drops foreign key for table `user`
\$this->dropForeignKey(
'fk-{table}-user_id',
'{table}'
);
// drops index for column `user_id`
\$this->dropIndex(
'idx-{table}-user_id',
'{table}'
);
// drops foreign key for table `product`
\$this->dropForeignKey(
'fk-{table}-product_id',
'{table}'
);
// drops index for column `product_id`
\$this->dropIndex(
'idx-{table}-product_id',
'{table}'
);
// drops foreign key for table `user_order`
\$this->dropForeignKey(
'fk-{table}-order_id',
'{table}'
);
// drops index for column `order_id`
\$this->dropIndex(
'idx-{table}-order_id',
'{table}'
);
\$this->dropColumn('{table}', 'user_id');
\$this->dropColumn('{table}', 'product_id');
\$this->dropColumn('{table}', 'order_id');
\$this->dropColumn('{table}', 'created_at');
}
}
CODE;