在SQL数据库中插入一个日期时间类型的值。

问题描述 投票:2回答:1

目前使用pyodbc python模块将一些数据导入SQL数据库。

其中一个数据字段是datetime,目前对应的python变量(我正试图将其加载到SQL数据库中)的格式是这样的。

MMDDYY HH:MM:SS ##:####

(其中##:##是操作系统时区的偏移)。总之,我得到了以下错误。

"The conversion of a nvarchar data type to a datetime date type resulted in an out -of -range value" "将一个nvarchar数据类型转换为datetime日期类型导致一个超出范围的值"

我想知道我最好的选择是什么来纠正这个问题。我是否应该手动编辑python字符串,使其采用不同的格式(例如YYYY-MM-DD),或者是否有一个SQL转换函数,我可以在INSERT INTO语句中使用?最终,我想知道SQL具体寻找什么来转换为日期时间,以便我可以相应地调整我的数据。

谢谢!我想知道SQL具体是怎么寻找日期时间转换的,这样我就可以相应地调整我的数据了。

python sql pyodbc
1个回答
2
投票

是的,有SQL转换功能,如 select convert(varchar, getdate(), 23) 为YYY-MM-DD

select convert(varchar, getdate(), 22) 

for MMDDYY HH:MM:SS

是的,你可以用它来做INSERT INTO语句,如

DECLARE @Tdatetime VARCHAR(MAX) 
SET @Tdatetime = CONVERT( VARCHAR, GETDATE() , 106)
INSERT INTO table_name (column1, column2, ...)
VALUES (@Tdatetime , value2, ...)
© www.soinside.com 2019 - 2024. All rights reserved.