gpt4 book ai didi

php - 使用现有数据库数据将不可空列添加到 laravel 迁移

转载 作者:可可西里 更新时间:2023-11-01 07:39:51 25 4
gpt4 key购买 nike

我必须向已有数据的现有表中添加一个新列,但遇到了一些问题。

  1. 如何添加此列?它将成为一个 Not Nullable 字段。我现在可以用默认数据填充它并稍后返回并更新。所以如果我们需要在添加时删除约束。 我假设我将需要使用直接的 SQL 查询。

  2. 使用 PHPUnit 和 SQLite 进行这项工作,目前我收到错误 SQLSTATE[HY000]:一般错误:1 无法添加默认值为 NULL 的 NOT NULL 列(SQL:alter table "轨道”添加列“short_description”文本不为空)

我将如何修改此迁移?

public function up()
{
Schema::table('tracks', function(Blueprint $table)
{
$table->text('short_description')->after('description');
});
}

最佳答案

您必须设置默认值:

public function up()
{
Schema::table('tracks', function(Blueprint $table)
{
$table->text('short_description')->after('description')->default('default_value');
});
}

关于php - 使用现有数据库数据将不可空列添加到 laravel 迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22306460/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com