首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >整型字段的PyGreSQL空值

整型字段的PyGreSQL空值
EN

Stack Overflow用户
提问于 2010-02-26 22:49:39
回答 1查看 334关注 0票数 0

我正在尝试将一些行插入到一个包含整数字段的表中,该字段可以为空:

代码语言:javascript
复制
cur.execute("INSERT INTO mytable (id, priority) VALUES (%(id)d, %(priority)d)", \
            {'id': id, 'priority': priority})

priority变量可以是整数,也可以是None。当优先级为整数值时,这是有效的,但是,当优先级为None时,我得到以下错误:

代码语言:javascript
复制
internal error in 'BEGIN': int argument required

我注意到,对于Python的字符串格式化,通常不能使用None作为要格式化的整数的值-它抛出的错误与pgdb抛出的错误相同。但是,当我将格式化字符串更改为%(priority)s时,错误更改为:

代码语言:javascript
复制
internal error in 'BEGIN': unsupported format character 'W' (0x57) at index 60

我猜这是因为我正在尝试将一个字符串导入到一个整数字段中。

如何导入空值?

EN

回答 1

Stack Overflow用户

发布于 2012-07-02 09:46:30

通常,Postgresql会自动将字符串值转换为整型列的整型。因此,如果字符串参数包含整数或为None,对整型列使用%(priority)s之类的字符串格式化程序通常是安全的。如果字符串设置为None,则该列将被指定为NULL。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2342390

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档