Набор результатов недоступен, по крайней мере, на данный момент, в sqlite. Все зависит от того, какую именно информацию вы хотите получить из ResultSet или ResultSetMetaData и т. Д., Но есть и другие способы получения почти такой же информации.
Вы можете получить подробную информацию о столбцах в таблице со следующим, используемым, как если бы это был SELECT, и информация о столбцах будет представлена:
pragma table_info(myTable) ;
См. http://www.sqlite.org/pragma.html#pragma_table_info для получения дополнительной информации.
Если вы хотите получить информацию о конкретном SELECT, вы можете получить информацию из полученного Курсора. Смотри http://developer.android.com/reference/android/database/Cursor.html
Например, если вам нужен тип данных для столбца, вы можете использовать метод getType () в более новых версиях Android или использовать серию функций «get», чтобы определить, по крайней мере, какой тип читаемый, с этим ужасным кодом:
Cursor curs = db.rawQuery(sqlStr, null);
int numberOfColumns = curs.getColumnCount();
String []colNames = new String[numberOfColumns];
String []colTypes = new String[numberOfColumns];
for(int iCol=1; iCol<=numberOfColumns; iCol++) {
colNames[iCol-1] = curs.getColumnName(iCol-1);
colTypes[iCol-1] = null; //curs.getType(iCol);
}
while(curs.moveToNext()) {
// this code assumes that the first row has the same data types
// as the rest of the rows
for(int iCol=1; iCol<=numberOfColumns; iCol++) {
String colName = colNames[iCol-1];
String colType = colTypes[iCol-1];
if(colType==null) {
// determine column type
try {
curs.getString(iCol-1);
colType = colTypes[iCol-1] = "text";
} catch (Exception ignore) {
try {
curs.getLong(iCol-1);
colType = colTypes[iCol-1] = "integer";
} catch (Exception ignore1) {
try {
curs.getFloat(iCol-1);
colType = colTypes[iCol-1] = "real";
} catch (Exception ignore2) {
try {
curs.getBlob(iCol-1);
colType = colTypes[iCol-1] = "blob";
} catch (Exception ignore3) {
colType = colTypes[iCol-1] = "other";
}
}
}
}
}
if("text".equals(colType)) {
... curs.getString(iCol-1);
} else
if("real".equals(colType)) {
... curs.getDouble(iCol-1);
} else
if("integer".equals(colType)) {
... curs.getInt(iCol-1);
} else { // unknown type
... colType+"-"+curs.getString(iCol-1);
}
}
}
Другая информация доступна аналогичным образом, в зависимости от ваших потребностей.