问题标签 [executemany]

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 投票
1 回答
489 浏览

python - 使用 cursor.executemany(query, df.itertuples(index=False)) 的 pyodbc 批量数据导入挑战

我对 python 相当陌生,但我给了它一个严肃的 bash 来优雅地解决这个问题。

挑战:我想将市场数据从 pandas df 导入 sql 表。有大约 7000 种不同的股票,每个股票都有大约 4000-10000 条日终记录,所以我试图让 pyodbc executemany 正常工作,而不是更新大量代码以使用 SQL Alchemy 和 to_sql 选项。

这几行代码给我带来了很大的挑战——需要更新 SQL ODBC Driver v17 以支持 index=False 选项。

SQL 目标表:

数据:df.head()

我得到的最接近的工作如下。但是,这种方法会导致:

('22007', '[22007] [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]从字符串转换日期和/或时间时转换失败。(241) (SQLExecDirectW)')

pandas 列已经是一个日期类型——所以我不相信这是一个简单的日期类型转换(但无奈之下尝试了下面的转换)

任何有关如何使这种方法发挥作用的建议将不胜感激。

/卢瑟

0 投票
1 回答
289 浏览

python - python 在使用 Sql Server 的 fast_executemany 作为 TRUE 时崩溃

我正在尝试将数据从 SourceDB 导入 TargetDB。各个表中只有 15000 行,并且 fast_executemany 为 False 大约需要 20 分钟

但是当我将 fast_executemany 设置为 true 时,我的 python 解释器在 cursorTarget.executemany(SQL1, data) 崩溃了

0 投票
3 回答
111 浏览

python - 混合占位符、executemany 和表名

我可以使用以下代码遍历 python 对象,但是我希望能够为模式和表名使用占位符,通常我使用方法来执行此{}.{}操作.format(),但是如何将两者结合起来?

0 投票
1 回答
31 浏览

sql - 如何使用 cur.executemany() 存储来自 Twitter 的数据

我正在尝试从三个不同帐户的列表中下载推文,然后将所有信息存储在 SQL3 数据库中。

我已经尝试使用下面的代码,但它似乎永远运行。我错过了什么吗?这是因为我使用了 .executemany() 而不是 .execute()?

我希望程序在 SQL3 中编写表,但我从未收到消息“db updated”(即最后一行 print())

0 投票
0 回答
67 浏览

python-3.x - 使用 python 3 将 .csv 文件导入 sqlite3 时遇到问题

我已经尝试过,但我无法让它工作。我最初对文档的 utf 解码有问题,所以我添加了 errors='ignore 部分。现在我在一个出现 sqlite3 语法错误的地方。我的占位符数量与我的列相同(我知道它有很多列。我试图将它们全部放入数据库中,以便更容易以有意义的方式将其中一些列放在一起)

这是我的代码。

这是我得到的错误:

我在这里做错了什么?

0 投票
0 回答
87 浏览

python-3.x - UPDATE 数组在 python 上执行很多

我有这个 python 代码:

当我运行时给我这个问题。

另一方面,如果运行这个:

正确更新。

0 投票
0 回答
466 浏览

python - 将 CSV 文件读入 MySQL 并使用 executemany 而不是 execute

我有一个 python 脚本,可以将一个大的(4GB !!!)CSV 文件读入 MySQL。它按原样工作,但 DOG 很慢。CSV 文件有超过 400 万行。将所有记录插入数据库需要很长时间。

我可以举个例子说明在这种情况下如何使用 executemany 吗?

这是我的代码:

同样,该代码用于将记录插入数据库。但是如果我能得到一个如何做到这一点的例子,我希望通过 executemany 来加速这个过程。

0 投票
2 回答
283 浏览

python - 在 Python 中逐步遍历 CSV 文件

我正在尝试加快将大型 CSV 文件加载到 MySQL 数据库中的速度。使用此代码加载一个 4GB 的文件大约需要 4 个小时:

我想使用executemany()语句来加快速度。为此,您必须将元组列表传递给第二个参数。

如果我在每次行迭代时构建列表,它会变得太大,并且当列表变得太大时,我会出现内存不足错误,并且脚本会崩溃。

我无法获得 csv_reader 或 csv_file 的长度以在范围语句中使用。

如何一次循环遍历 CSV 文件 1000 行并将结果存储在列表中,在 executemany 中使用它,然后存储接下来的 1000 行等,直到 CSV 文件结束?

0 投票
1 回答
1557 浏览

python - pymssql executemany 插入值非常慢

python-2.7.15、pymssql-2.1.4、SQL_Server-2018、Windows 10 专业版、MS-Office-2016

“base.csv”文件大小为 21.7 MB 和 30374 行。当我执行上述代码时,需要 929 秒才能完成。这意味着只有 32.7 行/秒,太慢了。谁能帮我找出原因?非常感谢。:-)

在此处输入图像描述

0 投票
1 回答
213 浏览

postgresql - PostgreSQL 从值更新将空值视为文本

当值的列之一仅包含Null值时,需要帮助来解决问题。例子:

这给了我:

我正在使用psycopg2.extras.execute_values以更新多个 Django ORM 对象。寻找不需要将空值显式转换为字段类型的解决方案。