SQLite检查列是否存在

Lit*_*ita 1 java sqlite android

我想检查agregasi表中的列(不是值),如果列存在做某事,但是如果列不存在则显示/打印消息'列不存在'.当列存在时,我可以在下面运行代码:

String keywords1={'pesawat','terbang'}; 
String sql1 = "SELECT " + keywords + " FROM agregasi"; //columns exist at agregasi table
Cursor c1 = myDbHelper.rawQuery(sql1, null);
if (c1.moveToFirst()) {
   // i can do something (no problem)
}
Run Code Online (Sandbox Code Playgroud)

但是当列名称我故意改变(检查)时,我有问题.我该怎么做才能打印错误信息(用android/java方式)?

**String keywords2={'psawat','terang'};** 
String sql2 = "SELECT " + keywords + " FROM agregasi"; //columns does not exist at table 
Cursor c2 = myDbHelper.rawQuery(sql2, null);
// what should i do get error message and show/print using toast
Run Code Online (Sandbox Code Playgroud)

Ada*_*m S 6

你在找getColumnIndex(String columnName).

int index = c2.getColumnIndex("someColumnName");
if (index == -1) {
    // Column doesn't exist
} else {
    ...
}
Run Code Online (Sandbox Code Playgroud)