我正在使用Yii创建一个测试应用程序并创建了我的第一个迁移。
<?php
class m111128_223507_reverse_bed_patient extends CDbMigration
{
public function up()
{
$this->dropForeignKey('fk_bed_patient1', 'bed');
$this->dropColumn('bed', 'patient_id');
$this->addColumn('patient', 'bed_id', 'int(11)');
$this->addForeignKey('fk_patient_bed1', 'patient', 'bed_id', 'bed', 'id', 'NO ACTION', 'NO ACTION');
}
public function down()
{
echo "m111128_223507_reverse_bed_patient does not support migration down.\n";
return false;
}
}
出于某种原因Yii认为我正在使用SQLite数据库,即使在我的应用程序main.php中我有MySQL设置在其他地方正常工作,SQLite行注释掉了。
我在尝试首次迁移时遇到此错误。
* 应用m111128_223507_reverse_bed_patient 从表格中删除列patient_id ...异常'CDbException',消息'SQLite不支持删除数据库列'。在.. ..
我在这里缺少什么?
答案 0 :(得分:4)
可能您的yiic
工具正在使用console.php
配置文件(默认情况下为Yii),请尝试查看protected/config/console.php
中的数据库连接设置。