Tabula_Rasa
Mitglied
Hallo zusammen,
ich frage mich, wie man Daten richtig in die Datenbank einfügt, denn wenn ich eine Tabelle Person und Hobbys habe
Person
id INTEGER
name VARCHAR(30)
hobby_id INTEGER
Hobby
id INTEGER
name VARCHAR(30)
und eine Person mehrere Hobbys haben kann, habe ich für eine Person je nachdem wie viele Hobbys sie hat, mehrere Datensätze, zB.:
1, Christian, 3
1, Christian, 5
Wenn ich nun eine Array hätte, das die ID von verschiedenen Hobbys enthält
müsste ich dann separat zwei POST-Requests an den Server schicken in einer for loop?
Falls ja, wenn ich die Daten per GET vom Server holen möchte, würde ich mehrere Datensätze der gleichen Person als JSON zurückgeliefert bekommen, aber eigentlich möchte ich nur die eine Person, die halt mehrere Hobbys besitzen kann.
Wenn ich in einer for loop die Daten ausgebe, würde ich mehrmals dieselbe Person ausgeben nur mit anderem Hobby, was auch nicht der Sinn sein kann.
Wie geht man generell da vor?
ich frage mich, wie man Daten richtig in die Datenbank einfügt, denn wenn ich eine Tabelle Person und Hobbys habe
Person
id INTEGER
name VARCHAR(30)
hobby_id INTEGER
Hobby
id INTEGER
name VARCHAR(30)
und eine Person mehrere Hobbys haben kann, habe ich für eine Person je nachdem wie viele Hobbys sie hat, mehrere Datensätze, zB.:
1, Christian, 3
1, Christian, 5
Wenn ich nun eine Array hätte, das die ID von verschiedenen Hobbys enthält
Code:
let hobbys = [3,5];
Code:
for(let hobby of hobbys)
this.service.post({id: 1, name: "Christian", hoby_id: hobby});
Falls ja, wenn ich die Daten per GET vom Server holen möchte, würde ich mehrere Datensätze der gleichen Person als JSON zurückgeliefert bekommen, aber eigentlich möchte ich nur die eine Person, die halt mehrere Hobbys besitzen kann.
Wenn ich in einer for loop die Daten ausgebe, würde ich mehrmals dieselbe Person ausgeben nur mit anderem Hobby, was auch nicht der Sinn sein kann.
Wie geht man generell da vor?