CREATE TABLE IF NOT EXISTS `platforms` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, `stationId` INT UNSIGNED NOT NULL, `name` VARCHAR(255) NULL, `direction` VARCHAR(255) NULL, `latitude` DECIMAL(10, 8) NOT NULL, `longitude` DECIMAL(11, 8) NOT NULL, `location` POINT NOT NULL, `isPRM` BOOLEAN NOT NULL DEFAULT FALSE, `hasElevator` BOOLEAN NOT NULL DEFAULT FALSE, `createdAt` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (id), SPATIAL INDEX idx_platforms_location (location), INDEX idx_platforms_station (stationId), CONSTRAINT fk_platforms_station FOREIGN KEY (stationId) REFERENCES stations(id) ON DELETE CASCADE, CONSTRAINT chk_platforms_latitude CHECK (latitude BETWEEN -90 AND 90), CONSTRAINT chk_platforms_longitude CHECK (longitude BETWEEN -180 AND 180) );