将日期时间格式从python更改为SQL Server时出错

2024-09-29 19:05:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用Python将数据加载到SQL Server中。我想将ScheduledStartDate的格式从“2021年4月20日09:00:00 AM”更改为“2021-04-20 09:00:00”

df['ScheduledStartDate'] = pd.to_datetime(df['ScheduledStartDate'])
df['ScheduledStartDate'] = df['ScheduledStartDate'].dt.strftime('%Y-%m-%d %H:%M:%S')

然而,我得到了这个错误

The conversion of a nvarchar data type to a datetime data type resulted in an out-of-range value.


Tags: ofto数据dfsqldatadatetimeserver
1条回答
网友
1楼 · 发布于 2024-09-29 19:05:56

在SQL Server中datetimedata type,是ScheduledStartDate列的类型。在内部,您在该表中插入的日期没有真正格式化,您可以阅读此post关于此常见错误的第一次失败。但是,当您选择并将日期格式化为20-APR-2021 09:00:00 AM时,并不是因为它是以这种方式存储的,它只是以默认格式显示,并与您的操作系统日期格式首选项相匹配

也就是说,您应该存储python中的日期,而不格式化它,然后在检索时格式化datetime列。比如:

SELECT CONVERT(varchar,ScheduledStartDate,20), *
FROM table

其中20yyyy-mm-dd hh:mm:ssDate Format Code

相关问题 更多 >

    热门问题