【发布时间】:2018-02-23 09:22:48
【问题描述】:
场景: 继上一个问题 (Removing the timestamp from a datetime in pandas dataframe) 之后,我有一个代码可以将数据从 excel 读取到 pandas 数据框,并使用命令 dataframe.to_sql 将该数据插入到给定的SQL 数据库。
问题:由于我的日期是以美国格式 (mm/dd/yyyy) 检索的,而我的数据库是国际格式 (dd/mm/yyyy),因此尝试时出现类型错误将我的数据上传到 SQL。
我已经尝试过的:我尝试了上一个问题中给出的建议,并以这种方式运行数据更改,但是当我尝试上传到 SQL 时出现错误。
我目前正在使用的线路:
fnl['Date'] = pd.to_datetime(fnl['Maturity'], errors='coerce')
允许代码运行,但在 SQL 中产生问题。
我也试过了:
fnl['Date'] = pd.to_datetime(fnl['Date'], format='%m/%d/%Y', errors:'coerce')
和
fnl['Date'] = pd.to_datetime(fnl['Date'], format='%m/%d/%Y')
仍然没有成功。
之前我把代码开头的所有编码都改成了utf-8,所以看不出问题出在哪里。
问题:我该如何解决这个问题?
数据示例:
Date
1/15/2023
1/15/2023
6/30/2023
6/30/2023
8/1/2022
8/1/2022
7/25/2022
7/25/2022
7/19/2024
7/13/2022
7/13/2022
【问题讨论】:
-
我将 UTF-8 与 MySQL 相关联,因此我删除了 SQL Server 标记。您应该使用您真正使用的数据库进行标记。
-
第二行的语法不正确。解决这个问题,看看会发生什么。另外,请在此处包含您的错误消息,以便我们了解您的问题。
-
如果我们能看到您的专栏是什么样子,那将会有所帮助。我认为你的格式是错误的。
-
@GordonLinoff 你说得对,我不知道有什么区别,谢谢你的编辑。
-
@cᴏʟᴅsᴘᴇᴇᴅ 我将使用部分列数据更新问题。关于错误,请原谅我的无能,但我找不到它。需要说明吗?