当前位置: 首页 > 知识库问答 >
问题:

(Laravel)在运行迁移时获得不正确的日期时间格式错误

狄新立
2023-03-14

我只是试图向现有表添加一个新列。这是我的迁移:

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class AddWarehouse extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('routes', function (Blueprint $table){
            $table->string('warehouse_address');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::table('routes', function (Blueprint $table){
            $table->dropColumn(['warehouse_address']);
        });
    }
}

运行php artisan migrate导致以下错误:

 [Illuminate\Database\QueryException]
 SQLSTATE[22007]: Invalid datetime format: 1292 Incorrect datetime value: '0000-00-00 00:00:00' for column 'created_at' at row 1 (SQL: alter table `routes` add `warehouse_address` varchar(255) not null)



 [Doctrine\DBAL\Driver\PDOException]
 SQLSTATE[22007]: Invalid datetime format: 1292 Incorrect datetime value: '0000-00-00 00:00:00' for column 'created_at' at row 1



 [PDOException]
 SQLSTATE[22007]: Invalid datetime format: 1292 Incorrect datetime value: '0000-00-00 00:00:00' for column 'created_at' at row 1

该表包含“created_at”和“Update_at”列,这些列已填充正确的值。如何阻止模式尝试在“created_at”列中插入日期时间?我宁愿不去管它。

在MySql中执行这些命令效果非常好。

编辑:当我尝试在没有“created_at”和“updated_at”列的表上运行相同的迁移时,会出现相同的错误。

共有1个答案

袁奇逸
2023-03-14

放置public$timestamps=false 将阻止Elount尝试更新它们。

(请参阅:禁用Laravel雄辩的时间戳)

 类似资料:
  • 有多种方法可以添加一天,例如: 这个的问题是答案是:2016-12-06 16:52:44.679431我只需要2016-12-06。我可以通过执行像split这样的字符串操作很容易地得到它。我想知道是否有直接做这件事的方法。 其次: 从我从文档中读到的内容来看,以下两种方法应该可以给我时区的时间,但这两种方法都不能。 结果:时间。结构时间(tm_year=2016,tm_mon=12,tm_da

  • 我正在处理一个在现有数据库上运行的项目。问题在于,在SQL Server中插入日期时间列时使用了错误的格式。服务器使用datetime作为Y-m-d,数据保存为Y-d-m。 我做了一些测试,当保存到MariaDB日期时间保存正确。 有更新的和创建的自定义字段,因此它们在模型上声明。 在模型中 这是保存数据后的QueryLog打印。正如您在查询日志中所看到的,datetime格式被正确解析为SQL

  • 我有一个帖子表和一个到达表,它引用了flight no(文本字符串格式)作为外键。然而,当我运行Laravel迁移时,我得到了可怕的错误: SQLSTATE[HY000]:常规错误: 1005不能创建表.(errno: 150"外键约束格式不正确")(SQL:改变表添加约束外键()引用() [PDOExc0019]SQLSTATE[HY000]:常规错误: 1005不能创建表.(errno: 15

  • 我有一个订单表和一个有一个引用作为一个外来的。然而,当我运行Laravel迁移我得到可怕的错误代码: SQLSTATE[HY000]:常规错误: 1005不能创建表.(errno: 150"外键约束格式不正确")(SQL:改变表add约束外键()引用() SQLSTATE[HY000]:常规错误: 1005不能创建表.(errno: 150"外键约束格式不正确") 这是我的表模式: 这是我的sch

  • 进行4次迁移,如下所示。这是用户表。 这就是艺术家的迁移。 这是歌曲迁移。 这就是专辑迁移。 这是一个连接众多艺术家和歌曲的特色。 当我尝试迁移这四个迁移时,会出现此错误。

  • 我试图执行此迁移: 用户: 文章: 但当我迁移时,会出现以下错误: SQLSTATE[HY000]:一般错误: 1005不能创建表.(Errcode: 150"外键约束是inc orrecly形成的")(SQL:更改表添加约束外键()引用()在更新级联上删除级联) 我已经尝试将大整数和大增量重命名为简单整数和增量,但没有成功。