【发布时间】:2014-08-05 15:05:15
【问题描述】:
我正在使用 SQLite DB 构建一个 Android 应用项目。
我陷入了一对多关系。
这是一个
private static final String createTableOrders =
"CREATE TABLE " + TABLE_ORDER + "("
+ KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT,"
...
+ KEY_COLUMN_FORMATS + " INTEGER REFERENCES " + TABLE_FORMATS + "(" + KEY_ID + ")"
+ ");";
很多
private static final String createTableFormats =
"CREATE TABLE " + TABLE_FORMATS + "("
+ KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT,"
...
+ ");";
我的问题在于 set/get 方法。 假设我需要获取一个订单中所有格式的 ID 列表。 我想 set 方法也是如此。
我试图在 SO 上找到此类问题,但大多数问题仅针对 SQL 部分。
附:花了 3 个小时试图自己完成,但我唯一要做的就是使用 GSON 将 id 列表编码为 String,但这只是一个死胡同。
编辑:我需要在代码中获取该信息。
P.S.S 我已经这样做了 18 个小时,如果这是一个超级愚蠢的问题,我很抱歉。
【问题讨论】:
-
"select distinct " + KEY_COLUMN_FORMATS + " from " + TABLE_ORDER? -
通常“多面”对“单面”有一个外键,所以我认为“TABLE_FORMATS”应该有一个“TABLE_ORDER”的外键。
-
刚刚有一个关联......我想这只是一些查询并用光标加载它,但它不会回答如何创建这种关系(getMethod)。
标签: java android sqlite one-to-many