我有一个名为TPatientVisits
的表格,当我尝试插入日期时,我收到此错误。我不太确定为什么错误存在,我非常确定我的日期格式正确,因为我在不同的表中使用相同的格式并且它们有效。
Msg 241,Level 16,State 1,Line 292
从字符串转换日期和/或时间时转换失败。
以下是我的表格插页,任何人都可以告诉我为什么这不起作用
INSERT INTO TPatientVisits (intPatientID, dtmVisit, intVisitTypeID, intWithdrawReasonID)
VALUES (1, '01/01/2017', 1, null),
(1, '01/02/2017', 2, null),
(1, '01/03/2017', 3, 3),
(2, '02/02/2017', 1, null),
(2, '02/03/2017', 2, null),
(2, '02/04/2017', 3, 2),
(3, '08/14/2017', 1, null),
(3, '08//15/2017', 2, null),
(3, '08//16/2017', 3, 6),
(4, '12/12/2017', 1, null),
(4, '12/13/2017', 2, null),
(4, '12/14/2017', 3, 1),
(5, '01/06/2017', 1, null),
(5, '01/07/2017', 2, null),
(5, '01/08/2017', 3, 5),
(6, '06/06/2017', 1, null),
(6, '06/07/2017', 2, null),
(6, '06/08/2017', 3, 6),
(7, '11/15/2017', 1, null),
(7, '11/16/2017', 2, null),
(7, '11/17/2017', 3, 2),
(8, '11/16/2017', 1, null),
(8, '11/17/2017', 2, null),
(8, '11/18/2017', 3, 5),
(9, '03/03/2017', 1, null),
(9, '03/04/2017', 2, null),
(9, '03/05/2017', 3, 4),
(10, '08/08/2017', 1, null),
(10, '08/09/2017', 2, null),
(10, '08/10/2017', 3, 5)
答案 0 :(得分:0)
Wei在上面是正确的(+ 1'd),因为将值插入日期列意味着值必须与日期格式兼容,并且'08 // 15/2017'和'08 // 16/2017'是不。
因此,您必须浏览硬编码的VALUES列表并确保所有日期都是日期。如果这些值是从表中选择的,那么使用TRY_CAST或ISDATE()会起作用,尽管我听说ISDATE()包含一些误报。