【发布时间】:2022-01-19 15:02:50
【问题描述】:
我有一个带有变量的 Python 脚本,用于更新 SQLite 数据库的“多”表中的行(UPDATE/INSERT)。
我的 CHILD 表结构如下所示:
| FOREIGN KEY | instance | location |
|---|---|---|
| id1 | 11111. | A. |
| id1. | 11111. | B. |
| id1. | 22222. | C. |
| id2 | 33333. | A. |
| id2. | 33333. | B. |
| id2. | 44444. | C. |
所以有多个 id 可以有多个实例(重复问题的结果)。我需要在具有相同实例的表中更新或插入多行(批次):例如,实例为 1111 的所有行。
知道我怎样才能完成这项工作吗?删除具有相同实例的所有行并用一批新的(更新的)行替换它们可能有效,但我无法确定我们的 SQL 代码可以工作。
【问题讨论】:
-
什么不起作用?你有错误吗?
-
运行脚本时出现此错误:“sqlite3.OperationalError: near "DUPLICATE": syntax error"。
-
SQLite 不支持 ON DUPLICATE KEY UPDATE。使用示例数据和预期结果编辑您的问题以明确说明您想要做什么。
-
感谢您澄清这一点!我看到了。很高兴知道这样我就不必在那里寻找解决方案了。
-
那么什么是可靠的解决方案?
标签: python sql sqlite sql-update sql-insert