【发布时间】:2017-07-12 23:56:47
【问题描述】:
我正在开发一个小型 Android 应用程序,该应用程序维护一个小型工具数据库,我借给其他人使用。
作为应用程序的一部分,我正在合并一个 sqllite 数据库,在执行查询和使用游标后,我在执行查询时遇到了一些麻烦。
有问题的代码如下:
String COLUMN_NAME = "toolName";
String[] columns = { COLUMN_NAME };
String selection = COLUMN_NAME + " =?";
String[] selectionArgs = {tool};
Cursor cursor = mToolDb.query(ToolStatisticContract.ToolStatisticEntry.TABLE_NAME, columns,
selection, selectionArgs, null, null, null, null);
return Integer.parseInt(cursor.getString(3));
数据库的合约如下:
public class ToolStatisticContract {
public static final class ToolStatisticEntry implements BaseColumns {
public static final String TABLE_NAME = "tooltable";
public static final String COLUMN_TOOL_NAME = "toolName";
public static final String COLUMN_LIFESPAN = "lifespan";
public static final String COLUMN_USAGE = "usageTime";
}
}
我实际上是在尝试从 COLUMN_USAGE 中提取值,这似乎会在将值解析为整数时产生错误。 COLUMN 中的值实际上是一个整数类型转换为上一段代码中的字符串,所以我相当确定错误包含在上面的代码 sn-ps 中。
再次提前感谢您的所有帮助!
【问题讨论】:
标签: android database sqlite cursors