我在名为owner_type
的表格中有一个名为events
的列。此列填充以下两个值之一:0(表示常规用户)和1(对于业务用户)。
此列的数据类型为string
,我想将其更改为integer
,因为它始终包含0和1。所以我这样做了:
public function up()
{
Schema::table('events', function (Blueprint $table) {
$table->integer('owner_type')->change()->default(0);
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('events', function (Blueprint $table) {
$table->string('owner_type')->default(0)->change();
});
}
但是,我收到此错误:
n AbstractPlatform.php第461行:
请求未知的数据库类型枚举, Doctrine \ DBAL \ Platforms \ MySQL57Platform可能不支持它。
在创建events
的迁移中,我有:
$table->enum('**', ['**', '**'])->default('**');
$table->enum('status', ['*', '*', '*', '*', '*'])->default('*');
但是,此表已经迁移。那有什么不对?
答案 0 :(得分:0)
试试这个
public function up()
{
//
Schema::table('events', function($table) {
$table->string('owner_type')->default(0);
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
//
Schema::table('events', function($table) {
$table->dropColumn('owner_type');
});
}