首页 > 解决方案 > Laravel table::create sqlserver sql server 上的日期转换

问题描述

如果有人可以帮助我,我很高兴。

在我的 SQL Server 数据库表中,我将 created_at 和 updated_at 字段作为日期时间类型:

[created_at] [datetime] NULL,

[updated_at] [datetime] NULL,

在我的控制器中,当我使用 table::create($request) 时,我收到以下消息:

将 nvarchar 数据类型转换为 datetime 数据类型导致值超出范围。(SQL:插入 [table] ([name], [username], [email], [password], [desclasse], [custnum] , [custbill], [federalId], [updated_at], [created_at]) 值(用户名、登录名、email@domain.com、hashbytes('MD5'、'*******')、USR、2183、 2183, 01776432000151, 2018-07-17 12:41:24.349, 2018-07-17 12:41:24.349))

问题是日期格式:2018-07-17 12:41:24.349。当我尝试直接在 SQL Server 中进行此插入时,接受的唯一方法是插入表 .... 值 (...,convert(datetime, '2018-07-17 12:41:24.349',121,. ..)

如何准备 created_at 和 updated_at 字段以在模型或 Laravel 中的任何其他位置使用此 convert(datetime... 生成插入?

提前致谢

标签: sql-serverlaraveldatetimemodeltype-conversion

解决方案


我找到了!在模型中我必须把 protected $dateFormat = 'd/m/y H:i:s'; 它有效。

不管怎么说,还是要谢谢你。


推荐阅读