Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

771
Vistas
Cómo saber si ya existe un registro en una base de datos de habitaciones

Me mudé de sql db a room. No puedo averiguar cómo verificar si el elemento existe en la base de datos. ¿Cómo escribir este código usando Room?

 fun existsCheck(place: Places): Boolean { val db= this.readableDatabase val query = "SELECT * FROM $TABLE_PLACES WHERE $COLUMN_LAT = ${place.lat} AND $COLUMN_LNG = ${place.lng}" val cursor = db.rawQuery(query, null) if(cursor.count > 0){ cursor.close() db.close() return true } cursor.close() db.close() return false }

He intentado lograr esto con este código, pero siempre obtengo FALSO

 @Query("SELECT name FROM place WHERE lat = :lat AND lng = :lng") fun exist(lat: Double?, lng: Double?): Flowable<String> override fun save() { Observable.just(dao) .subscribeOn(Schedulers.io()) .subscribe { dao.insert(place) } } override fun itemExists(lat: Double?, lng: Double?): Single<Boolean> = dao.exist(lat, lng) .flatMapSingle { Single.just(it.isNotEmpty()) } .onErrorReturn { false } .first(false) override fun delete() { dao.deleteByLat(place.lat) } override fun saveClicked() { var boolean = false itemExists(place.lat, place.lng) .subscribeOn(Schedulers.io()) .map { it -> boolean = it } if (boolean){ delete() v.setImageNotSaved() } else { save() v.setImageSaved() } }
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

esto funciona bien

 override fun itemExists() { Observable.just(dao) .subscribeOn(Schedulers.io()) .subscribeOn(AndroidSchedulers.mainThread()) .map { it -> it.exist(place.lat, place.lng) } .subscribe( { it -> saveClicked(true) }, {error -> saveClicked(false)}) }
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda