Android Room在运行时确定查询中的列名称

时间:2018-06-28 17:11:22

标签: android kotlin android-room

这是我的import QtQuick 2.0 import QtQuick.Controls 1.4 Row { id: navigationBar height: parent.height / 3 width: parent.width spacing: 15 anchors.centerIn : parent NavButton { id: selectDevice } NavButton { id: deviceConfig } NavButton { id: deviceInfo } } 表结构

Value

如您所见,每个条目都有一个或多个标志,这些标志确定是否在具有相应时间刻度的图形中使用该条目。

在我的varName value timestamp oneHour oneDay oneWeek ============================================================ varA 12.7 129387230 true false false varB 32.0 129387230 true true false varA 32.2 129387234 true true true ... 中,我有一个查询来获取变量的时标的所有值。 Dao只是带有Timescale的{​​{1}}

enum

在括号中,我想做类似oneHour, oneDay, oneWeek的操作,但这会引发错误。

1 个答案:

答案 0 :(得分:0)

无法在运行时更改查询,因为Room在构建期间会根据SQL查询来获取结果,从而生成代码。更改查询意味着更改方法的实现。

您可以通过创建3个查询来实现此目的,每个枚举值一个。 然后在运行时,确定您需要调用3种方法中的哪一种。