我正在开发一个Android应用程序并有以下查询:
result = myDataBase.query(HD_TABLENAME, new String[]{HD_KEYDATE, HD_KEYFESTID},
"YEAR = "+ year +" AND MONTH = " + month, null, null, null, HD_KEYDATE);
我编写了一个调用此查询的自定义DataBaseHelper。
以上结果如下:
SELECT DATE, FESTIVALID FROM HOLIDAYDATES WHERE YEAR = 2010 AND MONTH = 1 ORDER BY DATE
当我在同一个文件上从SQLLite admin执行相同的查询时,它返回所需的行。
没有例外,我怎样才能完成上述工作。 数据库存在,它适用于以前的查询。 是否有结果对象的任何属性,我可以检查以查看确切的错误是什么?
如果这会有帮助,不确定: 执行查询后得到的一条logcat消息:
04-19 10:39:54.803:DEBUG / SntpClient(71):请求时间失败:java.net.SocketException:协议不支持的地址族
澄清: 其中一个属性有: result.mStackTrace的值为= android.database.sqlite.DatabaseObjectNotClosedException:应用程序未关闭此处打开的游标或数据库对象
现在,我想首先我必须关闭并打开一些我愚蠢地打开的光标,但现在试图找到它,如果你能提出任何建议,请做。
附加问题,有没有办法看到与数据库的开放连接?
答案 0 :(得分:0)
你使用过吗。
dataBase = this.openOrCreateDatabase(dbName,MODE_PRIVATE,null);