CREATE TABLE `Country` ( `name` varchar(255), `id` int, `iso_a2` varchar(255), `iso_a3` varchar(255), `continent_id` int, `economic_group_id` int, FOREIGN KEY(`continent_id`) REFERENCES `Continent` (`id`), FOREIGN KEY(`economic_group_id`) REFERENCES `EconomicGroup` (`id`) ); CREATE TABLE `Continent` ( `name` varchar(255) ); CREATE TABLE `EconomicGroup` ( `name` varchar(255) ); CREATE TABLE `State` ( `name` varchar(255), `short` varchar(255), `country_id` int, FOREIGN KEY(`country_id`) REFERENCES `Country` (`id`) ); CREATE TABLE `City` ( `name` varchar(255), `state_id` int, FOREIGN KEY(`state_id`) REFERENCES `State` (`id`) );