【发布时间】:2018-11-22 22:30:15
【问题描述】:
我正在创建一个 Web 应用程序登录页面,用户在其中输入他们的登录信息,应用程序将获取他们的登录信息,将其与数据库中的内容进行比较,然后确定登录是否是注册用户。我开始做一个快速测试,看看我是否可以从数据库中获取值,但是我遇到的问题是,当我从我希望它找到的用户输入中输入特定值时,我不断得到一个错误指出该值需要是特定参数、行或元组。我正在使用 sql 服务器
@app.route('/login', methods=['GET', 'POST'])
def login():
if request.method == 'POST':
try:
connect = pypyodbc.connect('Driver={SQL server};Server=localhost;Database=capstone;uid=;pwd=')
cursor = connect.cursor()
_username = str(request.form['username'])
cursor.execute("SELECT * FROM login WHERE username= (%s)", _username)
dataUser = cursor.fetchone()[1]
return(dataUser)
except Exception as e:
return (str(e))
【问题讨论】:
-
您在 where 条件下使用 SQL 通配符进行测试。利用 ?作为参数标记而不是 %s。
-
我试过了?还是不行
-
你确定 _username 不是 None 吗?
标签: python sql-server database web-applications