61 lines
2.5 KiB
SQL
61 lines
2.5 KiB
SQL
CREATE TABLE IF NOT EXISTS `hurricanes` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`name` varchar(255) NOT NULL,
|
|
`year` int(11) NOT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
|
|
CREATE TABLE IF NOT EXISTS `hurricane_tracks` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`hurricane_id` int(11) NOT NULL,
|
|
`lat` decimal(9,6) NOT NULL,
|
|
`lon` decimal(9,6) NOT NULL,
|
|
`wind_speed_mph` int(11) NOT NULL,
|
|
`timestamp` int(11) NOT NULL,
|
|
PRIMARY KEY (`id`),
|
|
KEY `hurricane_id` (`hurricane_id`),
|
|
CONSTRAINT `hurricane_tracks_ibfk_1` FOREIGN KEY (`hurricane_id`) REFERENCES `hurricanes` (`id`) ON DELETE CASCADE
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
|
|
-- Clear existing data to prevent duplicates on re-run
|
|
SET FOREIGN_KEY_CHECKS = 0;
|
|
DELETE FROM `hurricanes`;
|
|
DELETE FROM `hurricane_tracks`;
|
|
SET FOREIGN_KEY_CHECKS = 1;
|
|
ALTER TABLE `hurricanes` AUTO_INCREMENT = 1;
|
|
ALTER TABLE `hurricane_tracks` AUTO_INCREMENT = 1;
|
|
|
|
-- Populate data
|
|
-- Hurricane Andrew (1992)
|
|
INSERT INTO `hurricanes` (`name`, `year`) VALUES ('Andrew', 1992);
|
|
SET @andrew_id = LAST_INSERT_ID();
|
|
INSERT INTO `hurricane_tracks` (`hurricane_id`, `lat`, `lon`, `wind_speed_mph`, `timestamp`) VALUES
|
|
(@andrew_id, 25.200000, -75.700000, 150, 1661299200),
|
|
(@andrew_id, 25.400000, -77.700000, 160, 1661310000),
|
|
(@andrew_id, 25.500000, -79.700000, 175, 1661320800),
|
|
(@andrew_id, 25.600000, -81.700000, 165, 1661331600),
|
|
(@andrew_id, 25.800000, -83.700000, 145, 1661342400),
|
|
(@andrew_id, 26.200000, -85.700000, 135, 1661353200);
|
|
|
|
-- Hurricane Katrina (2005)
|
|
INSERT INTO `hurricanes` (`name`, `year`) VALUES ('Katrina', 2005);
|
|
SET @katrina_id = LAST_INSERT_ID();
|
|
INSERT INTO `hurricane_tracks` (`hurricane_id`, `lat`, `lon`, `wind_speed_mph`, `timestamp`) VALUES
|
|
(@katrina_id, 23.100000, -80.100000, 80, 1124928000),
|
|
(@katrina_id, 24.500000, -81.800000, 95, 1124985600),
|
|
(@katrina_id, 26.000000, -85.000000, 110, 1125043200),
|
|
(@katrina_id, 28.200000, -89.600000, 175, 1125100800),
|
|
(@katrina_id, 30.200000, -89.600000, 125, 1125158400),
|
|
(@katrina_id, 31.100000, -89.600000, 75, 1125216000);
|
|
|
|
-- Hurricane Irma (2017)
|
|
INSERT INTO `hurricanes` (`name`, `year`) VALUES ('Irma', 2017);
|
|
SET @irma_id = LAST_INSERT_ID();
|
|
INSERT INTO `hurricane_tracks` (`hurricane_id`, `lat`, `lon`, `wind_speed_mph`, `timestamp`) VALUES
|
|
(@irma_id, 16.100000, -55.000000, 175, 1504656000),
|
|
(@irma_id, 18.200000, -63.000000, 185, 1504742400),
|
|
(@irma_id, 22.000000, -75.000000, 160, 1504828800),
|
|
(@irma_id, 23.500000, -81.500000, 130, 1504915200),
|
|
(@irma_id, 25.900000, -81.700000, 115, 1505001600),
|
|
(@irma_id, 28.900000, -82.400000, 75, 1505088000);
|