bus.fey.ink/sql/create-tables.sql

69 lines
1.1 KiB
SQL

--- Create tables for gtfs information
PRAGMA trusted_schema=1;
CREATE TABLE stops (
id TEXT PRIMARY KEY,
name TEXT,
code TEXT,
description TEXT,
platform TEXT,
parent TEXT
);
SELECT InitSpatialMetaData();
SELECT AddGeometryColumn(
'stops',
'location',
25832,
'POINT',
'XY'
);
SELECT CreateSpatialIndex('stops', 'location');
CREATE TABLE routes (
id TEXT PRIMARY KEY,
short_name TEXT,
long_name TEXT,
description TEXT,
type INTEGER,
color INTEGER,
text_color INTEGER
);
CREATE TABLE trips (
id TEXT PRIMARY KEY,
route_id TEXT,
service_id TEXT,
headsign TEXT,
short_name TEXT
);
CREATE TABLE stop_times (
trip_id TEXT,
sequence INTEGER,
arrival TEXT,
departure TEXT,
stop_id TEXT,
PRIMARY KEY(trip_id, sequence)
);
CREATE INDEX stop_times_idx
ON stop_times (stop_id, arrival);
CREATE TABLE calendar (
service TEXT PRIMARY KEY,
days INTEGER NOT NULL,
start_date TEXT NOT NULL,
end_date TEXT NOT NULL
);
CREATE INDEX calendar_idx
ON calendar (service, start_date);
CREATE TABLE calendar_dates (
service TEXT,
date TEXT,
type INTEGER,
PRIMARY KEY(service, date)
);
CREATE INDEX calendar_date_idx
ON calendar_dates (service, date);