You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

数据库查询结果仅返回[],登录验证代码调试求助

解决数据库查询返回空列表的问题

排查方向及解决建议:

  • 处理输入字符串首尾空格:用户输入的用户名/密码可能意外带有首尾空格,而数据库存储的记录无空格。先对输入做去空格处理:
    username = str(user_entry.get()).strip()
    passvordiukas = str(pass_entry.get()).strip()
    
  • 直接验证数据库数据:用SQL工具(如SQLite Studio、Navicat)执行手动拼接的查询语句,填入print输出的用户名和密码,看是否能查到结果。示例SQL:
    SELECT * FROM "Login_Info" WHERE "Username" = '你的用户名' AND "Password" = '你的密码';
    
    若工具中也查不到,说明数据库无匹配记录;若能查到,再排查代码参数传递问题。
  • 检查大小写匹配:部分数据库(如PostgreSQL)对字符串匹配大小写敏感,确认数据库存储的用户名/密码大小写与输入完全一致。
  • 调试查询语句(仅用于排查):临时拼接SQL语句并打印,验证参数是否正确带入:
    query = f'SELECT * FROM "Login_Info" WHERE "Username" = "{username}" AND "Password" = "{passvordiukas}"'
    print(query)
    cur.execute(query)
    result = cur.fetchall()
    
    将打印的SQL复制到数据库工具执行,确认语句逻辑是否正确。
  • 确认数据库连接指向:若使用SQLite,打印当前连接的数据库路径,避免连接到错误的数据库文件:
    print(conn.execute("PRAGMA database_list").fetchall())
    

内容的提问来源于stack exchange,提问作者Slazicity

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 20:49:57