Python3 | sqlite3:executemany() 不插入任何内容

Posted

技术标签:

【中文标题】Python3 | sqlite3:executemany() 不插入任何内容【英文标题】:Python3 | sqlite3: executemany() inserts nothing 【发布时间】:2015-12-04 03:53:33 【问题描述】:

我正在尝试使用sqlite3executemany() 插入带有Python3 的多个值。

代码:

import sqlite3
conn = sqlite3.connect('rssnewsdata.db')
c = conn.cursor()

entries = [
    ('url1', 1234, 'title1', 'summary1', 'feedurl1'),
    ('url2', 1235, 'title2', 'summary2', 'feedurl2'),
    ('url3', 1236, 'title3', 'summary3', 'feedurl3'),
    ('url4', 1237, 'title4', 'summary4', 'feedurl4')
]

c.executemany('INSERT INTO entries VALUES (?, ?, ?, ?, ?)', entries)

db 文件存在,表存在,我可以从中使用Python3SELECT,所以连接到它不是问题。这些列是TEXTINTEGERTEXTTEXTTEXT 类型。

Python 没有报告错误。缺什么?

【问题讨论】:

【参考方案1】:

你需要

conn.commit()

插入之后。

【讨论】:

以上是关于Python3 | sqlite3:executemany() 不插入任何内容的主要内容,如果未能解决你的问题,请参考以下文章

python sqlite3 如何模糊查询变量?

Python 3.6.0的sqlite3模块无法执行VACUUM语句

使用 Python3 创建一个 sqlite 表

Python3 | sqlite3:executemany() 不插入任何内容

python3.6导入sqlite3错误

Python3 引入sqlite3时出现错误:ModuleNotFoundError: No module named '_sqlite3'