Java JSONArray arr=新JSONArray(响应); System.out.println(arr.length()); 对于(int i=0;i

Java JSONArray arr=新JSONArray(响应); System.out.println(arr.length()); 对于(int i=0;i,java,android,sqlite,Java,Android,Sqlite,在这里,您不能在create query中指定列名highId。请查看它。使用KEY\u ID而不是highId public static final String KEY_ID = "_id"; Update High set udpateStatus = 'no' where "+ KEY_ID +"='?' 您正在用onCreate()方法中的列名\u id创建表, &正在尝试在列highID中添加数据 所以这个错误是因为列名不匹配 更新onCreate()中的db.execSQL方

在这里,您不能在create query中指定列名highId。请查看它。

使用KEY\u ID而不是highId

public static final String KEY_ID = "_id";

Update High set udpateStatus = 'no' where "+ KEY_ID +"='?'

您正在用
onCreate()
方法中的列名\u id创建表, &正在尝试在列highID中添加数据

所以这个错误是因为列名不匹配

更新
onCreate()
中的
db.execSQL
方法,如下所示:

db.execSQL("CREATE_TABLE "+ TABLE_NAME_HIGH +" (highID INTEGER PRIMARY KEY AUTOINCREMENT, "
        + COL_CODE_TREE + " VARCHAR, " + COL_HIGH_TREE + " INTEGER, "+ COL_STATUS_HIGH + " TEXT, " + COL_DATE_HIGH + " DATE);");

这是什么?一个在线调试器?如果您没有创建这样的列,为什么您认为您的表应该包含
highID
列?
db.execSQL("CREATE_TABLE "+ TABLE_NAME_HIGH +" (_id INTEGER PRIMARY KEY AUTOINCREMENT, "
            + COL_CODE_TREE + " VARCHAR, " + COL_HIGH_TREE + " INTEGER, "+ COL_STATUS_HIGH + " TEXT, " + COL_DATE_HIGH + " DATE);");
public static final String KEY_ID = "_id";

Update High set udpateStatus = 'no' where "+ KEY_ID +"='?'
db.execSQL("CREATE_TABLE "+ TABLE_NAME_HIGH +" (highID INTEGER PRIMARY KEY AUTOINCREMENT, "
        + COL_CODE_TREE + " VARCHAR, " + COL_HIGH_TREE + " INTEGER, "+ COL_STATUS_HIGH + " TEXT, " + COL_DATE_HIGH + " DATE);");