У меня небольшая проблема с выбором БД.У меня есть masterproducts и габаритные продукты.Обычно измерение имеет только один основной продукт.Но это может случиться в редких случаях, когда запись двойная.я получаю нулевое значение по результату ..
Соответствующий код:
in DbMasterProduct Object:
@ForeignCollectionField(eager = true, foreignFieldName = "masterProduct")
private ForeignCollection<DbProduct> products;
in DbProduct Object:
@DatabaseField(foreign = true, foreignAutoRefresh = true, columnName = "ZMASTERPRODUCT", foreignColumnName = "ZPRODUCTNUMBER")
protected DbMasterProduct masterProduct;
my selecting method:
public void getProductByProductnumber(final String productnumber, final QueryTask.Callback<List<DbProduct>> callback){
new QueryTask<List<DbProduct>>(){
@Override
protected List<DbProduct> queryInBackground() throws SQLException {
Where<DbProduct, Integer> query = getHelper().getProductDao().queryBuilder().where().eq("ZPRODUCT_NUMBER", productnumber);
return query.query();
}
}.start(callback);
}
Error:
'SELECT * FROM `ZMASTERPRODUCTS` WHERE `ZPRODUCTNUMBER` = ?' and 1 args, got >1 results
Проблема в том, что в данный момент отношение много к одному, но мне нужно много ко многим.Но как я могу это изменить?
Заранее спасибо за помощь