Sql server 无法在sql表中插入日期
使用PythonPyODBC,我试图在表中插入日期和时间,但是 " 从字符串转换日期和/或时间时('22007',u'[22007][Microsoft][ODBC驱动程序17 for SQL Server][SQL Server]转换失败。(241)(SQLExecDirectW)' " 插入查询:Sql server 无法在sql表中插入日期,sql-server,Sql Server,使用PythonPyODBC,我试图在表中插入日期和时间,但是 " 从字符串转换日期和/或时间时('22007',u'[22007][Microsoft][ODBC驱动程序17 for SQL Server][SQL Server]转换失败。(241)(SQLExecDirectW)' " 插入查询: cursor.executemany("""INSERT INTO DM (SI, DK, Total, CR, CCM, SDate, EDate) VALUES (?, ?, ?, ?,
cursor.executemany("""INSERT INTO DM (SI, DK, Total, CR, CCM, SDate, EDate)
VALUES (?, ?, ?, ?, ?, ?, convert(datetime, ?, 121))""",dms)
尝试使用以下格式插入日期和时间:
20190201 01:14:54.862963
20190201T01:14:54.862963
请注意,仅插入日期为20190201时,我可以插入,但仅插入面临问题的日期和时间
我也厌倦了下面的查询。通过此查询,您可以插入日期
cursor.executemany("""INSERT INTO DM (SI, DK, Total, CR, CCM, SDate, EDate)
VALUES (?, ?, ?, ?, ?, ?,?)""",dms)
这些格式无效,无法自动转换为datetime 20190201 01:14:54.862963 20190201T01:14:54.862963 您可以插入以下格式:
insert into test values (1,2,convert(datetime,'20190201 01:14:54.862',121))
否则,如果您的数据是显示的格式,您可以通过删除最后3位数字来执行以下解决方法
insert into test values (1,2,convert(datetime,substring('20190201 01:14:54.862963',1,len('20190201 01:14:54.862963')-3),121))
希望这能对您有所帮助。这是一个
datetime
专栏?什么版本的SQL Server?您是否尝试只使用三位小数,例如20190201 01:14:54.862
…我很确定日期“2019-02-01T01:14:54.862”中需要分隔符才能使用ISO日期格式。