问题标签 [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.
python - cx_Oracle.NotSupportedError: Python value cannot be converted to a database value
I am trying read data from one table and write into another table in another database using Python and cx_Oracle.
My script works fine when I read the records one by one but when I fetch more than 100 records using fetchmany
, the script fails with the error
This is the script I am trying to run.
python - Executemany 给出“TypeError:格式字符串的参数不足”
我试图在 MySQL 数据库中插入许多行,由于某种原因,我总是收到此错误。我已经尝试过本主题中的解决方案,但没有任何效果。
我的代码:
python - 如何使用 executemany 将每个 Key 中的第一个值写入数据库
我是 Python 新手,正在尝试使用 for 循环添加第一个和后续值,通过使用 cursor.executemany() 函数从字典中的列表顺序添加到数据库。
这是我的代码,
我在 i = i+1 迭代中不断收到语法错误。我正在尝试将所有 1 添加到第一行,然后添加 2,依此类推。有人可以告诉我我做错了什么吗?感觉就像一个明显的错误,我无法接受。
提前致谢。
sql-server - pyodbc cursor.executemany() (插入)正确填充表,但以退出代码 -1073741571 结束
环境:
- python-3.6
- pyodbc-4.0.23
- mssql 服务器 2014
当我使用cursor.executemany()
withcursor.fast_executemany = False
将数据插入 MSSQL 表时,它工作正常,但速度太慢(大约 1 小时才能写入 ~100000 行)。
当我使用它时cursor.executemany()
,它的cursor.fast_executemany = True
工作速度很快(大约 1m 可以写入 ~100000 行)并在第一种情况下写入完全相同的数据,但该过程以退出代码 -1073741571(0xC00000FD)结束并<built-in method executemany of pyodbc.Cursor object at 0x000001DE578AA210> returned a result with an error set
发生错误。
插入的数据具有以下结构:
我怎样才能在没有异常的情况下得到结果?
python - sqlite3.OperationalError:靠近“%”:语法错误
我创建了下表:
当我运行以下命令时:
我收到错误消息:
任何想法?
python - Python SQLite 正则表达式 ExecuteMany
在此先感谢您的帮助。
我在 python 中使用正则表达式并在文本中存储模式。然后我将它存储在一个列表中,并在使用 SQLite 将值插入到表中时调用该列表。但是,我得到一个“str”对象没有属性“executemany”。以下代码应该可以工作(就像它对 2 的元组一样)并将我的数据插入其中,但它给了我一个错误。
这是错误 在此处输入图像描述
任何帮助或建议将不胜感激。
python - Python sqlite3 如果 executemany() 在中途遇到完整性错误会发生什么?
如果我运行 SQL 命令
有约束
在 list 上使用 sqlite3 的executemany()
命令['a', 'b', 'c', 'd', 'e', 'f', 'a', 'b', 'g', 'h', 'i']
,我将得到一个sqlite3.IntegrityError
.
我对遇到此错误时的行为有一些疑问executemany()
,并且我无法找到有关该行为的任何文档。
1)在异常之前插入的值是否始终完好无损?
2) 是否有可能插入异常发生 后的值?
3)有没有办法确定哪些值导致异常?(我能想到的最好的办法是将列表包装在生成器中以跟踪状态,记录问题条目,然后在生成器的其余部分重试,直到整个列表被消耗完。)
python - Python 3.6 - “字符串%元组”做什么?
我正在为基于 Django 的应用程序编写一个 python 模块,该应用程序通过 cx_Oracle 访问 Oracle 数据库。“似乎”django 代码有一个错误,它破坏了 cx_Oracle “executemany”方法的使用。如果我使用 cx_Oracle 并严格通过 cx_Oracle 打开连接,则逻辑工作正常。通过 django 使用连接,它失败了。
由于 django 是一项要求,我正在寻找一种解决方法,并且需要了解它失败的语句(如下)试图做什么。我知道“%”既用作模运算符又用作字符串格式,因为在这种情况下显然是这样。但是,尽管进行了很多搜索,但这似乎不符合我能找到的使用“%”的任何字符串格式语法。有人可以解释这是要做什么吗?
在哪里:
如果你在 REPL 中输入这些值和上面的语句,你会得到同样的错误。
我知道我应该提交一份 django 错误报告。稍后会弄清楚。现在我希望我能以某种方式更改查询字符串中的 Oracle 绑定变量位置表示法以满足上述语句。同样,查询字符串直接与 cx_Oracle 一起工作没有问题。
细节:
Python 3.6.5 :: Anaconda, Inc.
CX-Oracle 7.0.0
Django 2.0.7
cx_Oracle 查询格式: https ://www.oracle.com/technetwork/articles/dsl/prez-python-queries-101587.html (见“Many at Once”)
我的 cx_Oracle 代码:
失败的代码在 django 模块 base.py 中,第 494 行: (C:\python\Anaconda2\envs\py36\lib\site-packages\django\db\backends\oracle\base.py)
python - How to handle exception with executemany (MySQL and Python)
I have a python script using executemany to bulk insert rows into a MySQL table. The data is retrieved from different APIs, so every now and then there is unexpected data which leads to a row causing exception.
If I understand correctly - when calling executemany with 1,000 rows and one of them is problematic - the entire bulk is not inserted.
I want to find a way to submit 1,000 records and successfully load the ones that are not problematic. So for example - if one of a thousand is problematic it will not be loaded, but all other 999 will be loaded.
What's the best practice on that? I'm thinking of catching an exception and creating a fallback to re-submit all 1000 one by one - but it seems like there must be a better way to achieve the same outcome.
Advice?
python - Python的MySQLdb将双引号改为单引号
我正在使用 python 从 REST API 读取值并写入 MySQL 表。返回值之一是 JSON,我想将其存储在数据库中。
API 返回的值已转义引号,类似于:
当我使用 print 时,我看到转义字符被替换为实际的引号(这是预期的结果):
但是,当我使用 MySQLdb 执行或 executemany(带有标记参数)时 - 写入数据库的值将所有双引号替换为单引号,使其成为无效的 json:
我该如何避免呢?