我在数据库中有三个表:
trips(trip_id(pk), trip_name(unique), user_id(fk))
places(place_id(pk), place_name(unique))
trips_places_asc(trip_id(fk), place_id(fk))
Run Code Online (Sandbox Code Playgroud)
由于多次旅行可以有很多地方,因此我有一个如上所示的连接表。
如果用户在行程中插入地点,地点将被添加到places
表格中,并且行程将与trips_places_asc
表格中的地点相关联。
因此,如果我编写如下查询:
INSERT INTO places (place_name)
VALUES ('XYZ')
INSERT INTO trips (trip_name)
VALUES ('MyTrip')
Run Code Online (Sandbox Code Playgroud)
那么如何在 Junction 或 Association 表中存储trip_id
and呢?我是否必须触发两个查询?place_id
trips_places_asc
我目前正在开发小型旅行应用程序,用户可以在其中将其他用户的旅行添加到他们的愿望清单中。我在为愿望清单设计数据库时遇到困难。
到目前为止我尝试过的是:
user (user_id(pk), user_name)
trip(trip_id(pk), trip_name, user_id(fk))
wishlist(trip_id(fk), user_id(fk))
Run Code Online (Sandbox Code Playgroud)
但是,由于多个用户可以将多次旅行添加到他们的愿望清单中,如何关联这些关系?
如果用户检索他的个人愿望清单,则可以显示“那个”特定用户的愿望清单中的相关旅行?