Laravel timestamp 将 NVARCHAR 数据类型转换为 datetime 数据类型时,该值超出有效范围

Laravel timestamp The value is outside the valid range when converting an NVARCHAR data type to a datetime data type

提问人:albertosetim 提问时间:11/13/2023 最后编辑:jarlhalbertosetim 更新时间:11/13/2023 访问量:46

问:

早上好! 我正在使用 Laravel 10 和 SQL 数据库进行一个项目,直到周五我都可以毫无问题地插入、更新和播种数据库。今天(星期一),数据库抱怨每个时间戳。

SQLSTATE[22007]: [Microsoft][ODBC Driver 18 for SQL Server][SQL Server] 转换 NVARCHAR 数据类型设置为 datetime 数据类型。

(连接:morebase,SQL:插入 [roles] ([name], [updated_at], [created_at])价值观 (admin, 2023-11-13 09:23:01, 2023-11-13 09:23:01))

我不记得改变什么东西导致这种情况!

我创建了一个 ModelBase 扩展模型并尝试更改日期格式,并且所有其他模型都从这个新模型扩展,例如:

/**
 * The default datetime format.
 *
 * @var string
 */
protected $dateFormat = 'Y-m-d H:i:s';

但是没有看!

有人为我准备了一盏灯吗?

谢谢!

php sql-server 时间戳 laravel-10

评论

2赞 Zhorov 11/13/2023
我通常用作日期时间格式。我自己的经验就在这个答案中。Y-m-d\TH:i:s
0赞 albertosetim 11/13/2023
它奏效了,你能解释一下吗?我不明白。(非常感谢)
1赞 AlwaysLearning 11/13/2023
在日期部分和时间部分之间使用分隔符使其成为一种明确的格式,这样它就不会在 SQL Server 上爆炸,例如:db<>fiddleTSET DATEFORMAT DMY

答: 暂无答案