241 lines
		
	
	
		
			No EOL
		
	
	
		
			7.4 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
			
		
		
	
	
			241 lines
		
	
	
		
			No EOL
		
	
	
		
			7.4 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
| START TRANSACTION;
 | |
| 
 | |
| DROP TABLE IF EXISTS datasheets_wargear;
 | |
| DROP TABLE IF EXISTS datasheets_options;
 | |
| DROP TABLE IF EXISTS datasheets_models;
 | |
| DROP TABLE IF EXISTS datasheets_keywords;
 | |
| DROP TABLE IF EXISTS datasheets_damage;
 | |
| DROP TABLE IF EXISTS strategems;
 | |
| DROP TABLE IF EXISTS warlord_traits;
 | |
| DROP TABLE IF EXISTS psychic_powers;
 | |
| DROP TABLE IF EXISTS datasheets_abilities;
 | |
| DROP TABLE IF EXISTS abilities;
 | |
| DROP TABLE IF EXISTS datasheets;
 | |
| DROP TABLE IF EXISTS wargear_list;
 | |
| DROP TABLE IF EXISTS wargear;
 | |
| DROP TABLE IF EXISTS factions;
 | |
| DROP TABLE IF EXISTS sources;
 | |
| 
 | |
| ALTER DATABASE wahapedia CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 | |
| 
 | |
| SELECT "sources";
 | |
| CREATE TABLE sources (
 | |
|   source_id INT PRIMARY KEY,
 | |
|   name VARCHAR(255),
 | |
|   type VARCHAR(255),
 | |
|   edition INT,
 | |
|   version VARCHAR(255),
 | |
|   errata_date VARCHAR(255),
 | |
|   errata_link VARCHAR(255),
 | |
|   check_me INT DEFAULT 0 /*boolean*/
 | |
| ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 | |
| 
 | |
| SELECT "factions";
 | |
| CREATE TABLE factions (
 | |
|   faction_id VARCHAR(255) PRIMARY KEY,
 | |
|   name VARCHAR(255),
 | |
|   link VARCHAR(255),
 | |
|   is_subfaction VARCHAR(255),
 | |
|   main_faction_id VARCHAR(255),
 | |
|   check_me INT DEFAULT 0 /*boolean*/
 | |
| ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 | |
| 
 | |
| SELECT "wargear";
 | |
| CREATE TABLE wargear (
 | |
|   wargear_id INT PRIMARY KEY,
 | |
|   name VARCHAR(255),
 | |
|   type VARCHAR(255),
 | |
|   description TEXT,
 | |
|   is_relic INT, /*boolean*/
 | |
|   faction_id VARCHAR(255),
 | |
|   legend TEXT,
 | |
|   check_me INT DEFAULT 0, /*boolean*/
 | |
|   CONSTRAINT wargear_fk_factions FOREIGN KEY (faction_id) REFERENCES factions (faction_id)
 | |
| ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 | |
| 
 | |
| SELECT "wargear_list";
 | |
| CREATE TABLE wargear_list (
 | |
|   wargear_id INT,
 | |
|   line  INT,
 | |
|   name VARCHAR(255),
 | |
|   weapon_range VARCHAR(255),
 | |
|   type VARCHAR(255),
 | |
|   strength VARCHAR(255),
 | |
|   armor_piercing VARCHAR(255),
 | |
|   damage VARCHAR(255),
 | |
|   abilities TEXT,
 | |
|   check_me INT DEFAULT 0, /*boolean*/
 | |
|   PRIMARY KEY (wargear_id, line),
 | |
|   CONSTRAINT wargear_list_fk_wargear FOREIGN KEY (wargear_id) REFERENCES wargear (wargear_id)
 | |
| ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 | |
| 
 | |
| SELECT "datasheets";
 | |
| CREATE TABLE datasheets (
 | |
|   datasheet_id INT PRIMARY KEY,
 | |
|   name VARCHAR(255),
 | |
|   link VARCHAR(255),
 | |
|   faction_id VARCHAR(255),
 | |
|   source_id INT,
 | |
|   role VARCHAR(255),
 | |
|   unit_composition TEXT,
 | |
|   transport TEXT,
 | |
|   power_points VARCHAR(255),
 | |
|   priest TEXT,
 | |
|   psyker TEXT,
 | |
|   open_play_only INT, /*boolean*/
 | |
|   crusade_only INT, /*boolean*/
 | |
|   virtual_ INT, /*boolean*/
 | |
|   cost INT,
 | |
|   cost_per_unit INT, /*boolean*/
 | |
|   check_me INT DEFAULT 0, /*boolean*/
 | |
|   CONSTRAINT datasheets_fk_factions FOREIGN KEY (faction_id) REFERENCES factions (faction_id),
 | |
|   CONSTRAINT datasheets_fk_sources FOREIGN KEY (source_id) REFERENCES sources (source_id)
 | |
| ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 | |
| 
 | |
| SELECT "abilities";
 | |
| CREATE TABLE abilities (
 | |
|   ability_id INT PRIMARY KEY,
 | |
|   type VARCHAR(255),
 | |
|   name VARCHAR(255),
 | |
|   legend TEXT,
 | |
|   is_other_wargear INT, /*boolean*/
 | |
|   faction_id VARCHAR(255),
 | |
|   description TEXT,
 | |
|   check_me INT DEFAULT 0, /*boolean*/
 | |
|   CONSTRAINT abilities_fk_factions FOREIGN KEY (faction_id) REFERENCES factions (faction_id)
 | |
| ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 | |
| 
 | |
| SELECT "datasheets_abilities";
 | |
| CREATE TABLE datasheets_abilities (
 | |
|   datasheet_id INT,
 | |
|   line INT,
 | |
|   ability_id INT,
 | |
|   is_index_wargear INT, /*boolean*/
 | |
|   cost INT,
 | |
|   model VARCHAR(255),
 | |
|   check_me INT DEFAULT 0, /*boolean*/
 | |
|   PRIMARY KEY (datasheet_id, line),
 | |
|   CONSTRAINT datasheets_abilities_fk_datasheets FOREIGN KEY (datasheet_id) REFERENCES datasheets (datasheet_id),
 | |
|   CONSTRAINT datasheets_abilities_fk_abilities FOREIGN KEY (ability_id) REFERENCES abilities (ability_id)
 | |
| ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 | |
| 
 | |
| SELECT "psychic_powers";
 | |
| CREATE TABLE psychic_powers (
 | |
|   psychic_power_id INT,
 | |
|   roll INT,
 | |
|   name VARCHAR(255),
 | |
|   faction_id VARCHAR(255),
 | |
|   legend TEXT,
 | |
|   type VARCHAR(255),
 | |
|   description TEXT,
 | |
|   check_me INT DEFAULT 0, /*boolean*/
 | |
|   PRIMARY KEY (psychic_power_id, roll),
 | |
|   CONSTRAINT psychic_powers_fk_factions FOREIGN KEY (faction_id) REFERENCES factions (faction_id)
 | |
| ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 | |
| 
 | |
| SELECT "warlord_traits";
 | |
| CREATE TABLE warlord_traits (
 | |
|   trait_id INT PRIMARY KEY AUTO_INCREMENT,
 | |
|   faction_id VARCHAR(255),
 | |
|   type VARCHAR(255),
 | |
|   roll VARCHAR(255),
 | |
|   name VARCHAR(255),
 | |
|   legend TEXT,
 | |
|   description TEXT,
 | |
|   check_me INT DEFAULT 0, /*boolean*/
 | |
|   CONSTRAINT warlord_traits_fk_factions FOREIGN KEY (faction_id) REFERENCES factions (faction_id)
 | |
| ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 | |
| 
 | |
| SELECT "strategems";
 | |
| CREATE TABLE strategems (
 | |
|   strategem_id INT PRIMARY KEY,
 | |
|   faction_id VARCHAR(255),
 | |
|   name VARCHAR(255),
 | |
|   type VARCHAR(255),
 | |
|   cp_cost VARCHAR(255),
 | |
|   legend TEXT,
 | |
|   source_id INT,
 | |
|   description TEXT,
 | |
|   check_me INT DEFAULT 0, /*boolean*/
 | |
|   CONSTRAINT strategems_fk_factions FOREIGN KEY (faction_id) REFERENCES factions (faction_id),
 | |
|   CONSTRAINT strategems_fk_sources FOREIGN KEY (source_id) REFERENCES sources (source_id)
 | |
| ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 | |
| 
 | |
| SELECT "datasheets_damage";
 | |
| CREATE TABLE datasheets_damage (
 | |
|   datasheet_id INT,
 | |
|   line INT,
 | |
|   col1 VARCHAR(255),
 | |
|   col2 VARCHAR(255),
 | |
|   col3 VARCHAR(255),
 | |
|   col4 VARCHAR(255),
 | |
|   col5 VARCHAR(255),
 | |
|   check_me INT DEFAULT 0, /*boolean*/
 | |
|   PRIMARY KEY (datasheet_id, line),
 | |
|   CONSTRAINT datasheets_damage_fk_datasheets FOREIGN KEY (datasheet_id) REFERENCES datasheets (datasheet_id)
 | |
| ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 | |
| 
 | |
| SELECT "datasheets_keywords";
 | |
| CREATE TABLE datasheets_keywords (
 | |
|   datasheet_id INT,
 | |
|   keyword VARCHAR(255),
 | |
|   model VARCHAR(255),
 | |
|   is_faction_keyword INT, /*boolean*/
 | |
|   check_me INT DEFAULT 0, /*boolean*/
 | |
|   PRIMARY KEY (datasheet_id, keyword),
 | |
|   CONSTRAINT datasheets_keywords_fk_datasheets FOREIGN KEY (datasheet_id) REFERENCES datasheets (datasheet_id)
 | |
| ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 | |
| 
 | |
| SELECT "datasheets_models";
 | |
| CREATE TABLE datasheets_models (
 | |
|   datasheet_id INT,
 | |
|   line INT,
 | |
|   name VARCHAR(255),
 | |
|   movement VARCHAR(255),
 | |
|   weapon_skill INT,
 | |
|   ballistic_skill INT,
 | |
|   strength INT,
 | |
|   toughness INT,
 | |
|   wounds INT,
 | |
|   attacks VARCHAR(255),
 | |
|   leadership INT,
 | |
|   save INT,
 | |
|   cost INT,
 | |
|   cost_description TEXT,
 | |
|   models_per_unit VARCHAR(255),
 | |
|   cost_including_wargear INT, /*boolean*/
 | |
|   base_size VARCHAR(255),
 | |
|   base_size_descr VARCHAR(255),
 | |
|   check_me INT DEFAULT 0, /*boolean*/
 | |
|   PRIMARY KEY (datasheet_id, line),
 | |
|   CONSTRAINT datasheets_models_fk_datasheets FOREIGN KEY (datasheet_id) REFERENCES datasheets (datasheet_id)
 | |
| ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 | |
| 
 | |
| SELECT "datasheets_options";
 | |
| CREATE TABLE datasheets_options (
 | |
|   datasheet_id INT,
 | |
|   line INT,
 | |
|   button VARCHAR(255),
 | |
|   description TEXT,
 | |
|   is_index_wargear INT, /*boolean*/
 | |
|   check_me INT DEFAULT 0, /*boolean*/
 | |
|   PRIMARY KEY (datasheet_id, line),
 | |
|   CONSTRAINT datasheets_options_fk_datasheets FOREIGN KEY (datasheet_id) REFERENCES datasheets (datasheet_id)
 | |
| ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 | |
| 
 | |
| SELECT "datasheets_wargear";
 | |
| CREATE TABLE datasheets_wargear (
 | |
|   datasheet_id INT,
 | |
|   line INT,
 | |
|   wargear_id INT,
 | |
|   cost INT,
 | |
|   is_index_wargear INT, /*boolean*/
 | |
|   model VARCHAR(255),
 | |
|   is_upgrade INT, /*boolean*/
 | |
|   check_me INT DEFAULT 0, /*boolean*/
 | |
|   PRIMARY KEY (datasheet_id, line, is_upgrade),
 | |
|   CONSTRAINT datasheets_wargear_fk_datasheets FOREIGN KEY (datasheet_id) REFERENCES datasheets (datasheet_id),
 | |
|   CONSTRAINT datasheets_wargear_fk_wargear FOREIGN KEY (wargear_id) REFERENCES wargear (wargear_id)
 | |
| ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
 | |
| 
 | |
| COMMIT; | 
