Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 知道两行是否都存在并且存在';使用asyncpg设置一个值(或null)_Python_Sql_Python 3.x_Postgresql_Asyncpg - Fatal编程技术网

Python 知道两行是否都存在并且存在';使用asyncpg设置一个值(或null)

Python 知道两行是否都存在并且存在';使用asyncpg设置一个值(或null),python,sql,python-3.x,postgresql,asyncpg,Python,Sql,Python 3.x,Postgresql,Asyncpg,在我的Discord Bot之一上配置新闻源时,我希望提供描述性错误/信息消息: 一个用于未配置提要时(行不存在) 一个用于特定列具有空值时 虽然这对于两个查询来说很简单,但我想将其简化为一个查询,如果可能的话,我提出了一种方法:使用fetchrow,它将返回一个Record对象。这满足了我的两个条件,如果数据库中没有行,我将得到None,但如果有行,我将得到记录对象和我选择的列,该列将是或不会是NULL。例如: update = await self.bot.database.fetchr

在我的Discord Bot之一上配置新闻源时,我希望提供描述性错误/信息消息:

  • 一个用于未配置提要时(行不存在)
  • 一个用于特定列具有空值时
虽然这对于两个查询来说很简单,但我想将其简化为一个查询,如果可能的话,我提出了一种方法:使用
fetchrow
,它将返回一个
Record
对象。这满足了我的两个条件,如果数据库中没有行,我将得到
None
,但如果有行,我将得到
记录
对象和我选择的列,该列将是或不会是
NULL
。例如:

update = await self.bot.database.fetchrow('UPDATE NewsFeed SET role_id = NULL '
                                          'WHERE guild_id = $1 AND key = $2 '
                                          'RETURNING role_id', ctx.guild.id, key)
我可以执行
如果不更新
检查
记录是否存在,然后
如果不更新[“角色id”]
检查
角色id
列是否为

我的问题是:是否有一种不同的/更简单的方法来解决这个问题,或者这是一种好方法