python-3.x - 在 Postgresql 中一次将数千行插入数据库
问题描述
我最近开始学习 python 和 sql 并且我已经搞砸了好几天并且被卡住了。我试图在我的 Postgresql 数据库表中插入 10 000 个生成的行,其中包括 id、address、booleanStatement、integerStatement 和 addressDate。
我创建了一个地址生成器,它以一种形式给了我结果:
myAddresses = addressGenerator (10000, 0)
print(myAddresses)
输出:['M3-44-44-00-00-00', False, 1],...,[M3-44-44-00-27-f5, False, 1]
现在要将其插入数据库,我编写了以下代码:
conn.psycopg2.connect("user=abc password=abc dbname=abc host=localhost")
c = conn.cursor()
c.execute('INSERT INTO "my-table" (id, "my-address", integerStatement, booleanStatement, addressDate) Values (NULL, %%s, %%d, %%s, %%s)', myAddresses)
conn.commit()
它给了我错误:psycopg2.ProgrammingError: syntax error at or near "%"
我理解它的方式: id 是自动递增的,所以占位符可以是 NULL,我的地址,booleanStatement 是字符串(%%s),integerStatement 是 %%d 并且作为时间戳的 addressDate 也是 %%s。我在这里做错了什么?
解决方案
推荐阅读
- html - 有什么用?
- node.js - 永远的 Node.js 脚本在循环中挂起
- c# - 调用 Facebook/Google+ 时未点击 ExternalLogin
- git - 在 macOS 上启动 gitk 会出现错误 application is not running
- reactjs - 即使包装在条件中,ComponentDidUpdate 也会导致无限渲染
- jupyter - JupyterLab:如何自定义 bash 终端?
- ios - Different cell depending on the cell text
- python - 如何将输入的开头移动到and?
- android - 使用相机验证预先存储的图像
- node.js - 尝试在本地安装 grpc-node