<分区>
我正在尝试制作一个基于密码输入的访问控制系统。我遇到了关于如何检查输入的密码是否存在于 MySQL 数据库中的问题。
下面的代码片段有效,它要求输入密码,并且当密码仅包含数字时可以成功地用数据库解析它。
pin_inp = raw_input("Enter PIN: ")
cursor.execute("SELECT COUNT(1) FROM members WHERE pincode = " + pin_inp + ";")
不过我想要字母数字密码。我以为我可以将 pincode 列创建为 VARCHAR
并输入字母数字 pincode,但它不会成功地使用数据库进行解析。对于字母数字条目,我得到这个错误:
_mysql_exceptions.OperationalError: (1054, "Unknown column '7988DB' in 'where clause'")
所以我在 members
表中有几行用于测试,一些在列 pincode
中有数值,一些有字母数字值。当我运行上面的代码时,数字输入正常,但字母数字值抛出 1054 错误。