目前,我们的系统已将BIGINTS作为主键,但现在我们正在转向GUIDS / UUIDS,我们需要转换表格。我认为在新的迁移中这样的事情可能有用,但不幸的是,它抱怨ID列已经存在。
public function up()
{
Schema::table('users', function (Blueprint $table) {
$table->dropPrimary('PRIMARY');
$table->dropColumn('id');
$table->uuid('id');
$table->primary('id');
});
}
public function down()
{
Schema::table('users', function (Blueprint $table) {
$table->bigIncrements('id');
$table->primary('id');
});
}
在Laravel迁移中是否有正确的方法进行此切换?
感谢您的帮助! :)
答案 0 :(得分:1)
将PRIMARY
更改为users_id_primary
并将操作分开:
Schema::table('users', function (Blueprint $table) {
$table->dropPrimary('users_id_primary');
$table->dropColumn('id');
)};
Schema::table('users', function (Blueprint $table) {
$table->uuid('id');
$table->primary('id');
});