Ordiance

buildPokemonDatabase

Oct 22nd, 2023
1,260
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 1.79 KB | None | 0 0
  1. DROP SCHEMA IF EXISTS pokemon;
  2. CREATE SCHEMA pokemon;
  3. USE pokemon;
  4.  
  5. DROP TABLE IF EXISTS `Generation`;
  6. CREATE TABLE `Generation` (
  7.   `ID` INT,
  8.   `FirstReleased` DATE,
  9.   `Region` VARCHAR(60),
  10.   PRIMARY KEY (`ID`),
  11.   KEY `Key` (`FirstReleased`, `Region`)
  12. );
  13.  
  14. DROP TABLE IF EXISTS `Games`;
  15. CREATE TABLE `Games` (
  16.   `ID` INT,
  17.   `Name` VARCHAR(100),
  18.   `ReleaseDate` DATE,
  19.   `Generation` INT,
  20.   PRIMARY KEY (`ID`),
  21.   FOREIGN KEY (`Generation`) REFERENCES `Generation`(`ID`),
  22.   KEY `Key` (`Name`, `ReleaseDate`)
  23. );
  24.  
  25. DROP TABLE IF EXISTS `Abilities`;
  26. CREATE TABLE `Abilities` (
  27.   `ID` INT,
  28.   `Name` VARCHAR(60),
  29.   `Description` VARCHAR(300),
  30.   PRIMARY KEY (`ID`),
  31.   KEY `Key` (`Name`, `Description`)
  32. );
  33.  
  34. DROP TABLE IF EXISTS `Classification`;
  35. CREATE TABLE `Classification` (
  36.   `ID` INT,
  37.   `Name` VARCHAR(60),
  38.   PRIMARY KEY (`ID`),
  39.   KEY `Key` (`Name`)
  40. );
  41.  
  42. DROP TABLE IF EXISTS `Pokemon`;
  43. CREATE TABLE `Pokemon` (
  44.   `ID` INT,
  45.   `Name` VARCHAR(60),
  46.   `Romanji` VARCHAR(60),
  47.   `Type1` VARCHAR(60),
  48.   `Type2` VARCHAR(60),
  49.   `Classification` INT,
  50.   `Attack` INT,
  51.   `Defense` INT,
  52.   `Hp` INT,
  53.   `Sp_attack` INT,
  54.   `Sp_defense` INT,
  55.   `Speed` INT,
  56.   `Weight_kg` FLOAT,
  57.   `Generation` INT,
  58.   `Is_legendary` BOOL,
  59.   PRIMARY KEY (`PokedexID`),
  60.   FOREIGN KEY (`Classification`) REFERENCES `Classification`(`ID`),
  61.   FOREIGN KEY (`Generation`) REFERENCES `Generation`(`ID`),
  62.   KEY `Key` (`Name`, `Romanji`, `Type1`, `Type2`, `Attack`, `Defense`, `Hp`, `Sp_attack`, `Sp_defense`, `Speed`, `Weight_kg`, `Is_legendary`)
  63. );
  64.  
  65. DROP TABLE IF EXISTS `PokemonAbilities`;
  66. CREATE TABLE `PokemonAbilities` (
  67.   `ID` INT,
  68.   `PokemonID` INT,
  69.   `AbilityID` INT,
  70.   PRIMARY KEY (`ID`),
  71.   FOREIGN KEY (`AbilityID`) REFERENCES `Abilities`(`ID`),
  72.   FOREIGN KEY (`PokemonID`) REFERENCES `Pokemon`(`ID`)
  73. );
  74.  
  75.  
Advertisement
Add Comment
Please, Sign In to add comment