我有一个正在生产的应用程序,我需要将字符串列的长度更改为280(默认值为255)。
将其更改为字符串到280是否安全?
在我的本地环境中,使用MySQLWorkbench,string
列显示为VARCHAR(255)
-我从MySQLWorkbench将其编辑为VARCHAR(280)
,在我的数据库中它似乎可以这样工作本地,但是在生产环境中这样做是安全的,还是应该使用这种迁移方式(模式构建器):
Schema::table('posts', function ($table) {
$table->string('text', 280)->change();
});
迁移方法也不会删除现有行,对吗?
答案 0 :(得分:2)
->change()
方法调用,因此迁移将更新当前列。mysql
5.0.3或更高版本,其中varchar
获得extended to hold more data。测试迁移的正常过程是将生产数据库导出到本地环境,然后运行迁移并查看会发生什么。