2016-07-04 11 views
5

Porzucałem dane do SQLite z danych Json, które dostaję. Teraz moje pytanie brzmi: mam jedną bazę danych z wieloma tabelami, które chcę powiązać z wieloma tabelami używając id's.Te są 3 tabele, które stworzyłem.W systemie Android SQLite db, jak dopasować poszczególne wartości kolumn, które mają ten sam identyfikator w wielu tabelach bazy danych?

Jest to pierwsza tabela gdzie mamy listę produktów,

private static final String DATABASE_CREATE_PRODUCT = 
      "CREATE TABLE if not exists " + "product_template" + " (" + 
        "_id" + " integer PRIMARY KEY autoincrement," + 
        "name" + "," + 
        "list_price" + "," + 
        "create_date" + "," + 
        "default_code" + "," + 
        "ean13" + "," + 
        "image_new" + "," + 
        "image_variant" + 
        ");"; 

Jest to drugi stół gdzie mamy listę partner

private static final String DATABASE_CREATE_PARTNER = 
      "CREATE TABLE if not exists " + "res_partner" + " (" + 
        "_id" + " integer PRIMARY KEY autoincrement," + 
        "phone" + "," + 
        "mobile" + "," + 
        "name" + 
        ");"; 

Jest to trzeci stół gdzie mamy linię konta

private static final String DATABASE_CREATE_LINE = 
      "CREATE TABLE if not exists " + "account_invoice_line" + " (" + 
        "product_id" + "," + 
        "partner_id" + 
        ");"; 

W trzeciej tabeli mam dwie kolumny product_id i partners_id, powinienem dopasować wartości par tner_id with druga tabela kolumna _id i powinienem uzyskać wartości kolumny name w nim i poprzez wartości w kolumnie id_partysty I powinien pasować do_id i powinienem otrzymać wartości w kolumnie name.

Czy ktoś może pomóc w tworzeniu relacji między tymi tabelami?

+0

ERR nie jestem tak gorąco w zakresie SQL, ale wierzę Jestem dokładne powiedzieć, że zapisuje się do utrzymania dodatkowy stół. Alternatywą dla utrzymania trzeciej tabeli byłoby połączenie SQL. – apelsoczi

Odpowiedz

1

Spróbuj czegoś takiego:

SELECT t1.name prod_name, t2.name part_name from product_template t1, res_partner t2, account_invoice_line t3 where t3.product_id = t1.id and t3.partner_id = t2.id 
+0

Czy możesz mi powiedzieć, jak użyć zapytania jako surowego zapytania w mojej aplikacji na Androida? –

4

Jeśli próbujesz uzyskać dane, prawdopodobnie szukasz połączeń SQL.

enter image description here

Powiązane problemy