java - SQLiteBindORColumnindexoutofrange异常

标签 java android sql database sqlite

我是编程新手,所以在实现 sqlite 数据库时遇到一些问题:

String[] spalten=new String[]{"uebung","datum","ergebnis"};
Cursor cursor1=db.rawQuery("SELECT MAX(uebung) FROM freunde", spalten);
cursor1.moveToFirst();
String r=cursor1.getString(0);

有人知道问题出在哪里吗?我只是想读出级别最高的盒子里的内容。

最佳答案

您使用的 rawQuery 是错误的。

query 方法将使用要返回的列的列表。 rawQuery 在查询字符串本身中有列列表; rawQuery 的第二个参数用于查询参数,您没有使用该参数,因此绑定(bind)它们失败。

只需使用这个:

cursor = db.rawQuery("SELECT MAX(uebung) FROM freunde", null);

关于java - SQLiteBindORColumnindexoutofrange异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17981032/

相关文章:

java - 添加 pom.xml 后无法使用 IE 和 Chrome WebDrivers

sql - Oracle优化器会在同一SELECT中使用多个提示吗?

php - Mysql/PHP - 如何从表单将数组值添加到数据库中

java - 基于线性时间搜索字符串对字符串进行排序

java - 比较三胞胎。打印两个空格分隔的整数,表示 Alice 和 Bob 分别获得的比较点

java - A* 实现问题

java - 新手遇到数组问题

Android R.java 不会在 Eclipse 中生成

java - 向自定义工具栏添加后退按钮的最佳方法是什么?

android - 如何从 fragment B访问 fragment A的按钮