将 sqlite3.cursor 转换为整数 PYTHON

Converting sqlite3.cursor to int PYTHON

当我尝试这个

时,我正在尝试从我的数据库中的特定 table return 一个 INT 'id'
retrieveID = "SELECT id FROM posts WHERE usernick=?"
latestPost = cursor.execute(retrieveID,(usernick, ))
if latestPost:
    return latestPost
else:
    return None

我return

AssertionError: <class 'int'> != <class 'sqlite3.Cursor'> error

我正在尝试针对网络测试对其进行测试。

我也试过

int(cursor.execute(retrieveID, (usernick,))

但我无法将光标转换为 in。我想知道是否有办法做到这一点,如果没有,我该如何解决这个问题

你必须先从游标中获取一个元素, 例如

cursor.execute(...)
post_id = cursor.fetchone()[0]

或者如果该查询有很多行,则使用 cursor.fetchall()

cursor.execute(...)
for row in cursor.fetchall():
    post_id = row[0]