问题标签 [pandas-to-sql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
135 浏览

python - 如何使用python更新db2表中列的所有值

我在 db2 中有一个表,如下所示:
index--------name------pass
0----------------A--- ----------没有
1-----B----------------没有
2------ ----------C-------------否

我需要将其更改为:
index--------name---------pass
0----A----- --------是
1----------------B----------------是
2-------- --------C-------------是的

这必须通过 sqlalchemy (pandas) pandas.dataframe.to_sql() 来完成

比如:df.to_sql('asdad', engine, 'PASDA', if_exists='replace', index=False)

而不是替换整个表,我只需要使用 python 更改“pass”列中的值,最好不要循环(在一个衬里)。

我需要它而无需在 db 中创建临时表,也无需将整个表复制到数据框中。

使用 sqlalchemy: 喜欢::

我在表中没有属性索引的部分出现错误,我应该在那里实际给出什么?

0 投票
0 回答
2141 浏览

python - DataError: (pyodbc.DataError) ('String data, right truncation: length 6454 buffer 6452', '22001') [SQL: u'INSERT INTO

在 python3、pandas 和 pyodbc(4.0.24 版)的帮助下,我们将上传一个带有“评论”列的数据框,其中通常包含大量文本。在上传过程中,我们收到以下错误:

上传到数据库时,使用 if_exists="replace",我们还将 dtypes 添加到列中,如下所示:

我们可以做些什么吗?

0 投票
0 回答
49 浏览

mysql - Pandas to_sql 在追加到 mysql 表时丢弃行

我正在使用 mysql 数据库和 python 处理从在线报纸上抓取的文章。我想在数据帧上使用 pandas to_sql 方法将最近抓取的文章附加到 mysql 表中。它工作得很好,但我在以下方面遇到了一些问题:

由于文章是从新闻站点自动抓取的,因此其中大约 1% 存在问题(编码、文本太长或类似的东西)并且不适合 mysql 表字段。出于某种原因,Pandas to_sql 方法会忽略这些错误并丢弃不适合的行。例如,我有以下 mysql 表:

而且我还有一个包含 15 行和 4 列(标题、描述、内容、链接)的数据框。

如果其中 1 行的标题大于 255 个字符,则它不适合 mysql 表。我预计在做的时候会出错df.to_sql('press', con=con, index=False, if_exists='append'),这样我就知道我有问题要解决;但实际结果是附加了 14 行而不是 15 行。

这可能对我有用,但我需要知道哪一行被丢弃,以便我可以标记它以供以后修订。是否可以告诉熊猫让我知道哪些索引被忽略了?

谢谢!

0 投票
0 回答
191 浏览

python - 使用 Python 将数据帧保存到 Redshift 时出错

我正在尝试将表从 Redshift 数据库复制到 Python 中的数据框,然后将其再次保存在 Redshift 中。

所以,第一步是有效的,但第二步我有一些问题。当我尝试保存具有 100 行的数据框时出现一些错误。

我收到了这个错误:

DBAPIError: (pyodbc.Error) ('HY000', '[HY000] [Amazon][ODBC] (10920) 已经下推的输入参数无法获取数据。

这很奇怪,因为当我尝试保存一个有 10 行的数据框时,根本没有错误。

0 投票
1 回答
780 浏览

sql-server - 让 Python 等到 to_sql 完成

我正在使用 to_sql 将我的数据帧导出到 SQL Server 表中,但是我想延迟下一行 python 代码的执行,直到插入完成。

我对数据库连接有一个不错的理解,但是在尝试了解 python 和 sql server 如何通信时,我有点菜鸟。

任何帮助将不胜感激。

谢谢

0 投票
1 回答
963 浏览

python - Pandas to_sql:浮点二进制问题

我有一个 Pandas DataFrame,我通过 to_sql 和 sqlalchemy 发送到 MySQL。我在 SQL 中的浮点数有时会显示略微偏离的小数位(与 df 相比)并导致错误:“警告:(1265,“第 1 行的“股息”列的数据被截断”)”。如何舍入浮点数以使其与 DataFrame 中的值匹配?

这些值从 CSV 中提取并从字符串转换为浮点数。写入 Excel 时它们看起来很好,但发送到 SQL 时,数字略有偏差。

当涉及到二进制时,我已经研究了浮点数的问题,但我无法弄清楚在从 DataFrame 到 SQL 的传输过程中如何覆盖它。

大多数浮点数类似于 0.0222000000,但每隔一段时间就会出现 0.0221999995。理想情况下,我希望它在末尾自动截断所有 0,但我会满足于第一个示例。但是,我需要将其向上舍入以匹配存储在 DataFrame 中的浮点数。

0 投票
0 回答
276 浏览

python - sqlalchemy.exc.InterfaceError:执行操作失败;Python 类型 Point 无法转换

我正在尝试插入具有这种格式的数据框

使用 to_sql 进入 mysql。但是,我收到了这个错误

显然,'geometry': 'POINT (-3.89474 14.94329)'没有转换。

我一直在寻找同样的错误,人们建议 to_sql 应该解决这个问题,但显然它不起作用。我使用 sqlalchemy 进行连接。任何人都可以为此提供任何指示吗?

0 投票
1 回答
118 浏览

python - 相同的代码结构 - 调用 .to_sql() 时的不同结果

背景

我有 3 个独立的 python 脚本,它们共享相同的结构并有效地做同样的事情 - 调用 API 的请求,检索 XML 数据,将 XML 转换为 ElementTree 对象,然后转换为 pandas DataFrame 对象,然后使用 .to_sql() 将该数据帧导入一个甲骨文数据库。这对于我编写的三个脚本中的两个是成功的,但是第三个没有写入数据库,没有返回错误,表被创建为空,脚本挂起

成功文件中的代码:

我会发布不成功文件的代码,但除了表和变量名之外,它实际上是相同的。

我试过的

我尝试使用 cx_oracle 的引擎来驱动与数据库的连接,但没有成功:

我已经验证了数据框是有效的。

我已经验证了与数据库的连接。

0 投票
0 回答
35 浏览

python - 有没有办法在每次将“块”写入 SQL 数据库时打印一条消息?

所以我有一个巨大的数据框,我通过将数据框分成大小为 10,000 的块(有人告诉我这加快了进程),将它写入 SQL 数据库中的表。我使用以下代码:

每当一个新的块被写入表中时,是否有办法打印一条消息?也许像“一个块刚刚添加到表中”之类的东西。这是一个 postgresql 数据库,但该信息可能无济于事。

0 投票
0 回答
149 浏览

python-3.x - pd.to_sql 返回 KeyError: '\x02' on Windows Server 2008 R2 (Python 3.6.4) (Pandas 0.25)

我有一些代码可以在我的 Windows 10 机器上本地运行,这些代码写入 DB2 sql 数据库上的表并完美运行。由于我似乎无法弄清楚的原因,它在 windows server 2008 R2 机器上不起作用。

在本地工作正常,但完全不知道为什么它不能在服务器上工作。

我收到以下错误:

键错误:'\x02'

同样,它在我的本地机器上工作得很好,但是在服务器上部署给了我上述错误。在过去的几个小时里,我一直试图弄清楚这一点,这让我发疯了。任何帮助将非常感谢!