在Python中比较用户输入和mysql db值
我是Python和MySQL的新手。我在本地主机上创建了一个MySQL数据库'食物'。 我想编写一个python代码来接受用户输入,并将其与我的数据库文件中的水果 列进行比较。如果输入字符串与数据库 中的任何值匹配,则必须打印“Item Exists”,否则将字符串添加到数据库。在Python中比较用户输入和mysql db值
mysql> select * from example; +----+--------+ | id | fruits | +----+--------+ | 1 | Apple | | 2 | Orange | | 3 | Grape | +----+--------+ 3 rows in set (0.00 sec)
我知道如何访问数据库,并插入值到它,但不知道如何将它与用户输入进行比较。请帮忙。谢谢。
基于您的评论:
fruits = cursor.fetchall()
for fruit in fruits:
if input == fruit:
print("Item exists")
它比较用户输入只与第一行不与其他人。 有没有其他更好的方法来做到这一点,如将单列中的所有值存储为单个行中的多个值,并将其作为字符串列表进一步处理? –
'fruit for fruit:'循环遍历fruit列中的所有行,假设'fetchall()'将所有值作为列表返回。 – Eqomatic
你说你可以访问数据库,你在做什么,试图从中检索值? – Eqomatic
@Eqomatic我使用'fetchall()'。这里: - cursor.execute(“SELECT fruits FROM example”)x = cursor.fetchall()'。我不知道如何使用x中的值与用户输入进行比较。 –