-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcreateDatabase.sql
86 lines (80 loc) · 4.14 KB
/
createDatabase.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
CREATE SCHEMA IF NOT EXISTS docManager;
-- marcar banco de dados para uso
-- ------------------------------
USE docManager;
-- menha tabela de banco de dados
-- ------------------------------
CREATE TABLE IF NOT EXISTS docManager.user
(
`id` char(36) NOT NULL Default 'uuid()' COMMENT 'Identificador unico do registro',
`userName` varchar(50) NOT NULL COMMENT 'nome de usuário',
`email` varchar(100) NOT NULL COMMENT 'email do usuário',
`password` varchar(50) NOT NULL COMMENT 'senha do usuário',
`active` bit NOT NULL DEFAULT false COMMENT 'indicador se o usuário esta ativo ou inativo',
`forgetPasswordToken` varchar(100) NULL COMMENT 'token recuperaçao da senha',
`forgetPasswordExpiration` DateTime NULL COMMENT 'expiração do token',
`userAutorization` tinyint NULL COMMENT 'Nivel de autorização',
`userGroupAutorization` varchar(50) NULL COMMENT 'Grupo de autorização',
`createdDate` DateTime NOT NULL DEFAULT NOW() COMMENT 'Data de criação do usuário',
`updatedDate` Datetime NULL COMMENT 'Data de alteração do reguistro',
PRIMARY KEY(`id`)
);
-- -----------------------------------------------------
-- Table `docManager`.`documentType`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS docManager.documentType (
`id` CHAR(36) not null default 'uuid()' comment 'Identificador do registro',
`name` varchar(100) not null comment 'Nome',
`description` varchar(200) not null comment 'Descrição',
`active` bit NOT NULL default false comment 'Ativo ou inativo',
`createdDate` datetime not null default NOW() comment 'data de criação do registro',
`updatedDate` datetime null comment 'data de atualização do registro',
PRIMARY KEY (`id`)
);
-- -----------------------------------------------------
-- Table `docManager`.`groupAutorization`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS docManager.groupAutorization (
`id` CHAR(36) not null default 'uuid()' comment 'Identificador do registro',
`name` varchar(100) not null comment 'Nome',
`active` bit NOT NULL default false comment 'Ativo ou inativo',
`createdDate` datetime not null default NOW() comment 'data de criação do registro',
`updatedDate` datetime null comment 'data de atualização do registro',
PRIMARY KEY (`id`)
);
-- -----------------------------------------------------
-- Table `docManager`.`documentParthers`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS docManager.documentPartners (
`id` CHAR(36) not null default 'uuid()' comment 'Identificador do registro',
`name` varchar(100) not null comment 'Nome',
`description` varchar(200) not null comment 'Descrição',
`active` bit NOT NULL default false comment 'Ativo ou inativo',
`createdDate` datetime not null default NOW() comment 'data de criação do registro',
`updatedDate` datetime null comment 'data de atualização do registro',
PRIMARY KEY (`id`)
);
-- ---------------------------
-- tabela de documentos
-- ---------------------------
CREATE TABLE IF NOT EXISTS docManager.documents
(
`id` char(36) NOT NULL DEFAULT 'uuid()' COMMENT 'Identificador unico do registro',
`title` varchar(100) NOT NULL COMMENT 'nome',
`description` varchar(200) NOT NULL COMMENT 'descrição do documento',
`documentTypeId` varchar(50) NOT NULL COMMENT 'tipo do documento',
`documentPartnersId` varchar(50) NOT NULL COMMENT 'parceiros',
`userAutorizationGroupId` varchar(50) NULL COMMENT 'Grupo de autorização',
`validity` DateTime NOT NULL DEFAULT NOW() COMMENT 'data de vigencia do documento',
`active` bit NOT NULL DEFAULT false COMMENT 'indicador se o documento esta ativo ou inativo',
`url` varchar(350) NOT NULL COMMENT 'link do documento',
`creationDate` DateTime NOT NULL DEFAULT NOW() COMMENT 'data de criação do registro',
`updateDate` DateTime NULL COMMENT 'data de atualização do registro',
PRIMARY KEY(`id`),
KEY `fk_documentType` (`documentTypeId`),
KEY `fk_documentPartners` (`documentPartnersId`),
CONSTRAINT `fk_documentType` FOREIGN KEY (`documentTypeId`) REFERENCES `documentType` (`id`),
CONSTRAINT `fk_documentPartners` FOREIGN KEY (`documentPartnersId`) REFERENCES `documentPartners` (`id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION
);