我是python的新手,甚至是sql的新手,但我一直都在努力让这个工作整个上午,我似乎无法弄明白。我有一个名为POSTS(id)的表设置。我正在尝试检查一个数字是否已经在id列中,但是postid的数字并不重要,因为即使将postid设置为不在数据库中的数字,数据也不会返回任何数字。
import sqlite3 as lite
import sys
con = lite.connect('post.db')
postid = '52642'
cur = con.cursor()
cur.execute("select id from POSTS where id=?", (postid,))
data = cur.fetchall()
if data is None:
print ('not found')
else:
print ('found')
答案 0 :(得分:4)
声明
data = cur.fetchall()
当找不到任何内容时,会为data
分配一个空列表,不 None
。
所以只需将支票更改为:
if not data:
而不是:
if data is None: