mySQL - Wstaw do trzech tabel
Ostatnio zapytałemto pytanie.
Mam relacyjną bazę danych z trzema tabelami. Pierwszy zawiera identyfikatory, które odnoszą się do drugiego. Drugi zawiera identyfikatory odnoszące się do trzeciego. Trzeci zawiera wyniki, po których jestem.
Czy za pomocą jednego zapytania można zapytać o identyfikator w pierwszej tabeli, która daje wszystkie wyniki z trzeciej tabeli, która go dotyczy?
Moje wybrane rozwiązanie to:
select * from table1 t1 join table2 t2 na t1.t2ref = t2.id łączenie table3 t3 na t2.t3ref = t3.id
Dodaj klauzulę where, aby wyszukać określone wiersze w tabeli1
gdzie t1.field = „wartość”
Moje nowe pytanie brzmi:
Zdałem sobie sprawę, że muszę też wstawić te trzy tabele. Mam do czynienia z systemem rezerwacji. Czy jest możliwe napisanie zapytania, które wstawia się do trzech tabel bezpośrednio po ich zapytaniu (używając złączeń?).
Kolejną kwestią, którą mam, jest to, czy powinienem korzystać z transakcji, aby upewnić się, że dwa zapytania są uruchamiane w tym samym czasie.