我有一个包含此信息的表格: 我创建表。
db.execSQL("CREATE TABLE IF NOT EXISTS income (id_income INTEGER
PRIMARY KEY AUTOINCREMENT, id_category INT(20), id_account INT(20),
Year INT(5), month INT(5), day INT(5) ,pay DOUBLE(20));");
然后我在这个表中插入一行:
db.execSQL("INSERT INTO
income(id_category,id_account,Year,month,day,pay) VALUES
(1,1,2013,1,1,678);");
然后我从我的桌子中选择*,
String selectQuery = "SELECT * FROM income ";
Cursor cursor = db.rawQuery(selectQuery, null);
cursor.moveToFirst();
int count = cursor.getCount();
if(count>0){
for (cursor.moveToFirst(); !cursor.isAfterLast(); cursor.moveToNext()) {
int temp_acc1;
int temp_cat;
temp_acc1=(cursor1.getColumnIndex("id_account"));
temp_cat=(cursor1.getColumnIndex("id_category"));
}
}
但是当我记录temp_acc1或temp_cat时,它返回列数。 例如,temp_acc1返回3 //实际返回1 或temp_cat返回2 //实际返回1 或者如果我使用temp_year = cursor1.getColumnIndex(“Year”)它返回5.////实际上返回2013
我该怎么办?
请帮帮我。
答案 0 :(得分:4)
将此类代码cursor1.getColumnIndex("Year")
更改为此cursor1.getInteger(cursor1.getColumnIndex("Year"))
。所以它会返回值