contentValues.put(Constant.GEO_MAP_INFO, geoMap);
contentValues.put(Constant.LONGITUDE, longitude);
contentValues.put(Constant.LATITUDE, latitude);
contentValues.put(Constant.ALTITUDE, altitude);
contentValues.put(Constant.CREATED_BY, createdBy);
contentValues.put(Constant.CREATION_DATE, creationDate);
contentValues.put(Constant.LAST_UPDATED_BY, lastUpdateBy);
contentValues.put(Constant.LAST_UPDATED_DATE, lastUpdateDate);
contentValues.put(Constant.STREET, street);
contentValues.put(Constant.ADDRESS, address);
contentValues.put(Constant.IS_UPLOADED, 0);
contentValues.put(Constant.CAPTURE_TIME, creationDate);
// LogUtils.e("image: " + BitmapUtils.bitmapToBytes(context, bitmap));
db.insert(Constant.TABLE_RDD_IMAGES, null, contentValues);
}

2、删除数据

/**
• 从表 rdd_images 中根据 imageId 删除数据
*/
public static void deleteFromRddImage(SQLiteDatabase db, String imageId) {
String delSql = "DELETE FROM " + Constant.TABLE_RDD_IMAGES +
" WHERE " + Constant.IMAGE_ID + " = “” + imageId + “”";
db.execSQL(delSql);
LogUtils.e(“deleteFromRddImage”);
}

3、查询数据的个数

/**
• 根据 imageId 从表 rdd_image_damages 查询出信息 的个数
• 
• @param db 数据库对象
• @param imageId imageId
• @return
*/
public static int queryGetCount(SQLiteDatabase db, String imageId) {
// String sql = "SELECT COUNT(image_id) FROM rdd_image_damages WHERE image_id = “imageId” ";
String sql = “SELECT COUNT(” + Constant.IMAGE_ID + ") " +
"FROM " + Constant.TABLE_RDD_IMAGE_DAMAGES +
" WHERE " + Constant.IMAGE_ID + " = “” + imageId + “”";
Cursor cursor = db.rawQuery(sql, null);
cursor.moveToFirst();
int count = cursor.getInt(0);
cursor.close();
LogUtils.e(“count:” + count);
return count;
}

4、查询 5公里矩形范围内的病害信息的经纬度

/**
• 根据地图当前中心点的经纬度 查询 5公里矩形范围内的病害信息的经纬度
• 
• @param db 数据库对象
• @param longitude 经度
• @param latitude 纬度
*/
public static List queryLonLatInCertainArea(SQLiteDatabase db,
double longitude, double latitude) {
List list = new ArrayList<>();
double longitude1 = longitude + DistanceUtil.oneKM2Lon * 5;
double longitude2 = longitude - DistanceUtil.oneKM2Lon * 5;
double latitude1 = latitude + DistanceUtil.oneKM2Lat(latitude) * 5;
double latitude2 = latitude - DistanceUtil.oneKM2Lat(latitude) * 5;
String sql = "SELECT " + Constant.LONGITUDE + " , " + Constant.LATITUDE +
" FROM " + Constant.TABLE_RDD_IMAGES +
" WHERE " + Constant.LONGITUDE + " BETWEEN " + longitude2 + " AND " + longitude1 +
" AND " + Constant.LATITUDE + " BETWEEN " + latitude1 + " AND " + latitude2;
Cursor cursor = db.rawQuery(sql, null);
while (cursor.moveToNext()) {
double longitudeReturn = cursor.getDouble(cursor.getColumnIndex(Constant.LONGITUDE));
double latitudeReturn = cursor.getDouble(cursor.getColumnIndex(Constant.LATITUDE));
LatLng bean = new LatLng(latitudeReturn, longitudeReturn);
list.add(bean);
}
return list;
}

5、查询并返回一个数据列表

/**
• 从本地数据库查询十条未上传的数据,放到一个列表中
• 
• @param db 数据库对象
• @return list
*/