小编Twi*_*aby的帖子

房间删除​​多行 WHERE IN 子句不起作用

我想在 Android Room byDELETE FROM...WHERE...IN (...)子句中按 ID 删除多行。下面是代码:

项目道

@Dao
interface ItemDao {
    @Query("DELETE FROM Item WHERE id IN (:ids)")
    fun deleteItemByIds(ids: String)
}
Run Code Online (Sandbox Code Playgroud)

项目视图模型

class ItemViewModel(application: Application) : AndroidViewModel(application) {
    fun deleteByIds(ids: String) {
        mScope.launch(Dispatchers.IO) {
            mItemDao.deleteItemByIds(ids)
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

项目活动

fun onDelete(){
    // these are not real IDs, just for demo
    val itemIdList = arrayListOf<Long>(1, 2, 3)
    val ids = itemIdList.toString().drop(1).dropLast(1) // ids = "1, 2, 3"
    itemViewModel.deleteByIds(ids)
}
Run Code Online (Sandbox Code Playgroud)

当只有一个 ID 时,代码有效。但是当有多个 ID 时,它不会。那么这里发生了什么?谢谢你的帮助。

sqlite android android-room

9
推荐指数
1
解决办法
3960
查看次数

如何使用FFmpeg连接多个具有不同流顺序的视频文件?

我有 3 个视频文件,其中包含以下信息:

Input #0, mpegts, from '01.ts':
  Duration: 00:00:06.08, start: 0.000000, bitrate: 931 kb/s
  Program 1
    Stream #0:0[0x101]: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 65 kb/s
    Stream #0:1[0x102]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p(progressive), 852x480 [SAR 640:639 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc


Input #0, mpegts, from '02.ts':
  Duration: 00:00:06.06, start: 6.016000, bitrate: 872 kb/s
    Stream #0:0[0x102]: Video: h264 (High), yuv420p(progressive), 852x480 [SAR 640:639 DAR 16:9], 25 fps, 25 tbr, …
Run Code Online (Sandbox Code Playgroud)

audio video ffmpeg concatenation

2
推荐指数
1
解决办法
2970
查看次数

标签 统计

android ×1

android-room ×1

audio ×1

concatenation ×1

ffmpeg ×1

sqlite ×1

video ×1