gpt4 book ai didi

python - 给定表名和列名,如何测试 INSERT 是否需要在要插入的值周围加上引号 ('' )?

转载 作者:行者123 更新时间:2023-11-28 22:42:17 25 4
gpt4 key购买 nike

我有一个列名/值的字典,要插入到一个表中。我有一个生成 INSERT 语句的函数。我被卡住了,因为函数总是在值周围加上引号,有些是整数。

例如如果第 1 列是整数类型,则语句应为 INSERT INTO myTable (col1) VALUES 5; vsINSERT INTO myTable (col1) VALUES '5'; 第二个导致错误,指出第 5 列不存在。

编辑:我发现了问题(我认为)。该值是用双引号而不是单引号引起来的,所以它是 "5"

在 Python 中,给定一个表名和列名,我如何测试 INSERT 语句是否需要在 VALUES 周围包含 ''

最佳答案

这个问题被标记为“psycopg2”——在许多情况下,您可以使用格式字符串准备语句并让 psycopg2 为您推断类型。

cur.execute('INSERT INTO myTable (col1, col2) VALUES (%s, %s);', (5, 'abc'))

psycopg2 会为您处理它,因为 Python 知道 5 是一个整数而 'abc' 是一个字符串。

http://initd.org/psycopg/docs/usage.html#passing-parameters-to-sql-queries

关于python - 给定表名和列名,如何测试 INSERT 是否需要在要插入的值周围加上引号 ('' )?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31910266/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com