Я пытаюсь выяснить, как создать отношения многих ко многим между моим столом поезда и столом станции. Я знаю, что мне нужна промежуточная таблица, которую я создал, и я чувствую, что собираюсь поработать над ней и подумать, что делать. У меня будет ссылка на данные, которая объясняет отношения между моими таблицами и моей схемой ниже. Единственные столбцы, которые я просматриваю в этих данных:
"GTFS_STOP_ID" (код идентификатора для Stop_Name), "Stop_Name" (название железнодорожной станции) и "Дневной маршрут" (которые представляют собой поезда )
-Один поезд может иметь много станций, и на одной станции также может быть много поездов, поэтому в столбце «Дневные маршруты» можно увидеть несколько поездов. (Например, N, W для первой строки)
-Как я бы точно изобразил отношения между этими 3 столбцами в моем CSV, в моей базе данных SQLITE?
Ссылка на данные (заранее извиняюсь за CSV, так как это единственное, что я смог найти в Интернете
cur.execute("""DROP TABLE IF EXISTS train""")
cur.execute(
""" CREATE TABLE train(
pk INTEGER PRIMARY KEY AUTOINCREMENT,
train_name VARCHAR
);""")
cur.execute("""DROP TABLE IF EXISTS station""")
cur.execute(
""" CREATE TABLE station(
pk INTEGER PRIMARY KEY AUTOINCREMENT,
stop_id VARCHAR,
station_name VARCHAR
);""")
cur.execute("""DROP TABLE IF EXISTS train_station""")
cur.execute(
""" CREATE TABLE train_station(
train_pk INTEGER,
station_pk INTEGER,
FOREIGN KEY (station_pk) REFERENCES station(pk)
FOREIGN KEY (train_pk) REFERENCES train(pk)
);"""
)