JayDeBeApi查询本地HSQL数据库无数据返回问题排查
问题:JayDeBeApi查询HSQL数据库无结果返回
问题详情
本地HSQL数据库已配置完成,表PA0101.ALERT_PRIORITY确认存在以下数据:
| PRIORITY_CD | PRIORITY_DN |
|---|---|
| 1 | High |
| 2 | Medium |
| 3 | Low |
使用JayDeBeApi编写查询代码后,运行没有任何结果输出;此前尝试执行插入语句时,还遇到过“无权限或对象未找到”的异常。
原测试代码
import jaydebeapi import os os.environ['JAVA_HOME'] = 'C:\Program Files\Java\jdk1.8.0_191' conn = jaydebeapi.connect("org.hsqldb.jdbc.JDBCDriver", "jdbc:hsqldb:hsql://localhost/xdb", ["SA", "SA"], "C:\\PATH\\hsqldb.jar") curs = conn.cursor() curs.execute("SELECT * FROM PA0101.ALERT_PRIORITY") curs.fetchall() curs.close() conn.close()
解决办法
问题的核心是curs.fetchall()仅获取了结果集,但没有将结果输出。只需把该方法调用包裹在print()中,就能打印出查询到的数据:
修改后的关键代码片段:
curs.execute("SELECT * FROM PA0101.ALERT_PRIORITY") print(curs.fetchall())
执行修改后的代码,就能正常看到表中的数据了。
内容的提问来源于stack exchange,提问作者Eric
相关产品推荐
相关产品推荐

