· 6 years ago · May 26, 2019, 04:26 AM
1-- MySQL Script generated by MySQL Workbench
2-- Sun May 26 01:16:31 2019
3-- Model: New Model Version: 1.0
4-- MySQL Workbench Forward Engineering
5
6SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
7SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
8SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
9
10-- -----------------------------------------------------
11-- Schema mydb
12-- -----------------------------------------------------
13
14-- -----------------------------------------------------
15-- Schema mydb
16-- -----------------------------------------------------
17CREATE SCHEMA IF NOT EXISTS `mydb` DEFAULT CHARACTER SET utf8 ;
18USE `mydb` ;
19
20-- -----------------------------------------------------
21-- Table `mydb`.`setor_economico`
22-- -----------------------------------------------------
23CREATE TABLE IF NOT EXISTS `mydb`.`setor_economico` (
24 `set_codigo` INT NOT NULL AUTO_INCREMENT,
25 `set_nome` VARCHAR(45) NOT NULL,
26 PRIMARY KEY (`set_codigo`))
27ENGINE = InnoDB;
28
29
30-- -----------------------------------------------------
31-- Table `mydb`.`subsetor_economico`
32-- -----------------------------------------------------
33CREATE TABLE IF NOT EXISTS `mydb`.`subsetor_economico` (
34 `sub_codigo` INT NOT NULL AUTO_INCREMENT,
35 `sub_nome` VARCHAR(45) NOT NULL,
36 `set_codigo` INT NOT NULL,
37 PRIMARY KEY (`sub_codigo`),
38 INDEX `fk_subsetor_economico_setor_economico_idx` (`set_codigo` ASC) VISIBLE,
39 CONSTRAINT `fk_subsetor_economico_setor_economico`
40 FOREIGN KEY (`set_codigo`)
41 REFERENCES `mydb`.`setor_economico` (`set_codigo`)
42 ON DELETE NO ACTION
43 ON UPDATE NO ACTION)
44ENGINE = InnoDB;
45
46
47-- -----------------------------------------------------
48-- Table `mydb`.`segmento_economico`
49-- -----------------------------------------------------
50CREATE TABLE IF NOT EXISTS `mydb`.`segmento_economico` (
51 `seg_codigo` INT NOT NULL AUTO_INCREMENT,
52 `seg_nome` VARCHAR(45) NOT NULL,
53 `sub_codigo` INT NOT NULL,
54 PRIMARY KEY (`seg_codigo`),
55 INDEX `fk_segmento_economico_subsetor_economico1_idx` (`sub_codigo` ASC) VISIBLE,
56 CONSTRAINT `fk_segmento_economico_subsetor_economico1`
57 FOREIGN KEY (`sub_codigo`)
58 REFERENCES `mydb`.`subsetor_economico` (`sub_codigo`)
59 ON DELETE NO ACTION
60 ON UPDATE NO ACTION)
61ENGINE = InnoDB;
62
63
64-- -----------------------------------------------------
65-- Table `mydb`.`nivel_governancia`
66-- -----------------------------------------------------
67CREATE TABLE IF NOT EXISTS `mydb`.`nivel_governancia` (
68 `gov_sigla` INT NOT NULL,
69 `gov_nome` VARCHAR(45) NOT NULL,
70 PRIMARY KEY (`gov_sigla`),
71 UNIQUE INDEX `gov_codigo_UNIQUE` (`gov_sigla` ASC) VISIBLE)
72ENGINE = InnoDB;
73
74
75-- -----------------------------------------------------
76-- Table `mydb`.`empresa`
77-- -----------------------------------------------------
78CREATE TABLE IF NOT EXISTS `mydb`.`empresa` (
79 `emp_codigo` INT NOT NULL,
80 `emp_nome` VARCHAR(45) NOT NULL,
81 `gov_sigla` INT NULL,
82 `seg_codigo` INT NOT NULL,
83 PRIMARY KEY (`emp_codigo`),
84 INDEX `fk_empresa_nivel_governancia1_idx` (`gov_sigla` ASC) VISIBLE,
85 INDEX `fk_empresa_segmento_economico1_idx` (`seg_codigo` ASC) VISIBLE,
86 CONSTRAINT `fk_empresa_nivel_governancia1`
87 FOREIGN KEY (`gov_sigla`)
88 REFERENCES `mydb`.`nivel_governancia` (`gov_sigla`)
89 ON DELETE NO ACTION
90 ON UPDATE NO ACTION,
91 CONSTRAINT `fk_empresa_segmento_economico1`
92 FOREIGN KEY (`seg_codigo`)
93 REFERENCES `mydb`.`segmento_economico` (`seg_codigo`)
94 ON DELETE NO ACTION
95 ON UPDATE NO ACTION)
96ENGINE = InnoDB;
97
98
99-- -----------------------------------------------------
100-- Table `mydb`.`acoes`
101-- -----------------------------------------------------
102CREATE TABLE IF NOT EXISTS `mydb`.`acoes` (
103 `ac_codigo` VARCHAR(45) NOT NULL,
104 `empresa_emp_codigo` INT NOT NULL,
105 PRIMARY KEY (`ac_codigo`, `empresa_emp_codigo`),
106 UNIQUE INDEX `ac_codigo_UNIQUE` (`ac_codigo` ASC) VISIBLE,
107 INDEX `fk_acoes_empresa1_idx` (`empresa_emp_codigo` ASC) VISIBLE,
108 CONSTRAINT `fk_acoes_empresa1`
109 FOREIGN KEY (`empresa_emp_codigo`)
110 REFERENCES `mydb`.`empresa` (`emp_codigo`)
111 ON DELETE NO ACTION
112 ON UPDATE NO ACTION)
113ENGINE = InnoDB;
114
115
116-- -----------------------------------------------------
117-- Table `mydb`.`tipo_indice`
118-- -----------------------------------------------------
119CREATE TABLE IF NOT EXISTS `mydb`.`tipo_indice` (
120 `tind_codigo` INT NOT NULL,
121 `tind_nome` VARCHAR(45) NOT NULL,
122 PRIMARY KEY (`tind_codigo`))
123ENGINE = InnoDB;
124
125
126-- -----------------------------------------------------
127-- Table `mydb`.`indice`
128-- -----------------------------------------------------
129CREATE TABLE IF NOT EXISTS `mydb`.`indice` (
130 `ind_cod` INT NOT NULL,
131 `ind_nome` VARCHAR(45) NOT NULL,
132 `tipo_indice_tind_codigo` INT NOT NULL,
133 PRIMARY KEY (`ind_cod`),
134 INDEX `fk_indice_tipo_indice1_idx` (`tipo_indice_tind_codigo` ASC) VISIBLE,
135 CONSTRAINT `fk_indice_tipo_indice1`
136 FOREIGN KEY (`tipo_indice_tind_codigo`)
137 REFERENCES `mydb`.`tipo_indice` (`tind_codigo`)
138 ON DELETE NO ACTION
139 ON UPDATE NO ACTION)
140ENGINE = InnoDB;
141
142
143-- -----------------------------------------------------
144-- Table `mydb`.`acoes_empresa`
145-- -----------------------------------------------------
146CREATE TABLE IF NOT EXISTS `mydb`.`acoes_empresa` (
147 `ind_cod` INT NOT NULL,
148 `ac_codigo` VARCHAR(45) NOT NULL,
149 `emp_codigo` INT NOT NULL,
150 `acoes_ano` INT NOT NULL,
151 `acoes_quadrimestre` INT NOT NULL,
152 `acoes_percentual` DECIMAL(45) NOT NULL,
153 `acoes_quantidade` INT NOT NULL,
154 PRIMARY KEY (`ind_cod`, `ac_codigo`, `emp_codigo`),
155 INDEX `fk_indice_has_acoes_acoes1_idx` (`ac_codigo` ASC, `emp_codigo` ASC) VISIBLE,
156 INDEX `fk_indice_has_acoes_indice1_idx` (`ind_cod` ASC) VISIBLE,
157 CONSTRAINT `fk_indice_has_acoes_indice1`
158 FOREIGN KEY (`ind_cod`)
159 REFERENCES `mydb`.`indice` (`ind_cod`)
160 ON DELETE NO ACTION
161 ON UPDATE NO ACTION,
162 CONSTRAINT `fk_indice_has_acoes_acoes1`
163 FOREIGN KEY (`ac_codigo` , `emp_codigo`)
164 REFERENCES `mydb`.`acoes` (`ac_codigo` , `empresa_emp_codigo`)
165 ON DELETE NO ACTION
166 ON UPDATE NO ACTION)
167ENGINE = InnoDB;
168
169
170-- -----------------------------------------------------
171-- Table `mydb`.`tipo_mercado`
172-- -----------------------------------------------------
173CREATE TABLE IF NOT EXISTS `mydb`.`tipo_mercado` (
174 `merc_codigo` INT NOT NULL,
175 `merc_nome` VARCHAR(45) NOT NULL,
176 PRIMARY KEY (`merc_codigo`))
177ENGINE = InnoDB;
178
179
180-- -----------------------------------------------------
181-- Table `mydb`.`cotacao_acoes`
182-- -----------------------------------------------------
183CREATE TABLE IF NOT EXISTS `mydb`.`cotacao_acoes` (
184 `cot_codigo` INT NOT NULL,
185 `cot_datapregao` DATETIME NOT NULL,
186 `cot_precoabertura` DECIMAL(45) NOT NULL,
187 `cot_precomaximo` DECIMAL(45) NOT NULL,
188 `cot_precofechamento` DECIMAL(45) NOT NULL,
189 `cot_quantnegocios` INT NOT NULL,
190 `cot_totalacoes` INT NOT NULL,
191 `cot_volume` DECIMAL(45) NOT NULL,
192 `merc_codigo` INT NOT NULL,
193 `ac_codigo` VARCHAR(45) NOT NULL,
194 PRIMARY KEY (`cot_codigo`, `ac_codigo`),
195 INDEX `fk_cotacao_acoes_tipo_mercado1_idx` (`merc_codigo` ASC) VISIBLE,
196 INDEX `fk_cotacao_acoes_acoes_empresa1_idx` (`ac_codigo` ASC) VISIBLE,
197 CONSTRAINT `fk_cotacao_acoes_tipo_mercado1`
198 FOREIGN KEY (`merc_codigo`)
199 REFERENCES `mydb`.`tipo_mercado` (`merc_codigo`)
200 ON DELETE NO ACTION
201 ON UPDATE NO ACTION,
202 CONSTRAINT `fk_cotacao_acoes_acoes_empresa1`
203 FOREIGN KEY (`ac_codigo`)
204 REFERENCES `mydb`.`acoes_empresa` (`ac_codigo`)
205 ON DELETE NO ACTION
206 ON UPDATE NO ACTION)
207ENGINE = InnoDB;
208
209
210SET SQL_MODE=@OLD_SQL_MODE;
211SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
212SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;