2

当我这样做时,cursor.getColumnIndex(Database._F_A3)它会按预期工作。

但如果我这样做

String dbColumn = "Database._F_A3";
cursor.getColumnIndex(dbColumn );

它给出了错误。

我相信这是因为getColumnIndex()将括号内的任何内容管理为要在列中搜索的字符串。

有什么办法可以做我想做的事吗?

收藏夹

4

1 回答 1

1
String dbColumn = "Database._F_A3";
cursor.getColumnIndex(dbColumn );

上面的调用是完全错误的,因为它改变了你在数据库类中声明为静态的名称,

假设您在 Database 类中声明为,

public static String _F_A3 = "something";

现在如果你打电话,

String dbColumn = "Database._F_A3";
cursor.getColumnIndex(dbColumn );  // it means you are using Database._F_A3 
                 // as column name which doesn't exist instead of "something"

所以,最好尝试使用

String dbColumn = Database._F_A3;  // without quotes
cursor.getColumnIndex(dbColumn );
于 2012-08-03T11:07:05.050 回答