atual
davinTI/jogos_matheus/pipeline/head There was a failure building this commit

This commit is contained in:
Matheus
2026-09-25 10:39:38 -03:00
parent 461a573145
commit 655e67a0f9
2 changed files with 436 additions and 309 deletions
+160 -70
View File
@@ -1,79 +1,169 @@
<?xml version="1.0" encoding="UTF-8"?>
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd
http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd">
<databaseChangeLog
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.liquibase.org/xml/ns/dbchangelog-ext
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd
http://www.liquibase.org/xml/ns/dbchangelog
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd">
<changeSet author="matheus.medeiros" id="matheus.medeiros-1">
<preConditions onError="WARN" onFail="MARK_RAN" onSqlOutput="IGNORE">
<not>
<tableExists tableName="TB_MATHEUS_MEDEIROS_JOGOS" />
</not>
</preConditions>
<sql endDelimiter=";" splitStatements="true" stripComments="false">CREATE TABLE TB_MATHEUS_MEDEIROS_JOGOS (
CODIGO NUMERIC(10) NOT NULL,
TITULO VARCHAR(150) NOT NULL,
GENERO VARCHAR(30) NOT NULL,
ANO_LANCAMENTO NUMERIC(4) NOT NULL,
PRODUTORA VARCHAR(50) NOT NULL,
DESCRICAO VARCHAR(500) NOT NULL,
CONSTRAINT PK_MM_JOGOS PRIMARY KEY (CODIGO),
CONSTRAINT CK_MM_JOGOS_ANO
CHECK (ANO_LANCAMENTO BETWEEN 1970 AND EXTRACT(YEAR FROM CURRENT_DATE)),
CONSTRAINT CK_MM_JOGOS_TITULO
CHECK (LENGTH(TITULO) BETWEEN 3 AND 100)
);
</sql>
</changeSet>
<changeSet author="matheus.medeiros" id="matheus.medeiros-drop">
<changeSet author="matheus.medeiros" id="matheus.medeiros-2">
<preConditions onError="WARN" onFail="MARK_RAN" onSqlOutput="IGNORE">
<not>
<sequenceExists sequenceName="TB_MATHEUS_MEDEIROS_JOGOS_SEQ" />
</not>
</preConditions>
<sql endDelimiter=";" splitStatements="true" stripComments="false">
CREATE SEQUENCE TB_MATHEUS_MEDEIROS_JOGOS_SEQ
START WITH 1 INCREMENT BY 1 CACHE 1 NO CYCLE;
</sql>
</changeSet>
<sql>
DROP TABLE IF EXISTS TB_MATHEUS_MEDEIROS_AVALIACOES;
DROP TABLE IF EXISTS TB_MATHEUS_MEDEIROS_JOGOS;
</sql>
<changeSet author="matheus.medeiros" id="matheus.medeiros-4">
<preConditions onError="WARN" onFail="MARK_RAN" onSqlOutput="IGNORE">
<not>
<tableExists tableName="TB_MATHEUS_MEDEIROS_AVALIACOES" />
</not>
</preConditions>
<sql endDelimiter=";" splitStatements="true" stripComments="false">
</changeSet>
<changeSet author="matheus.medeiros" id="matheus.medeiros-drop-sequences">
<sql>
DROP SEQUENCE IF EXISTS TB_MATHEUS_MEDEIROS_AVALIACOES_SEQ;
DROP SEQUENCE IF EXISTS TB_MATHEUS_MEDEIROS_JOGOS_SEQ;
</sql>
</changeSet>
<changeSet author="matheus.medeiros" id="matheus.medeiros-1">
<sql>
CREATE SEQUENCE TB_MATHEUS_MEDEIROS_JOGOS_SEQ
START WITH 1
INCREMENT BY 1
CACHE 1
NO CYCLE;
</sql>
</changeSet>
<changeSet author="matheus.medeiros" id="matheus.medeiros-2">
<sql>
CREATE TABLE TB_MATHEUS_MEDEIROS_JOGOS (
CODIGO
NUMERIC(10)
DEFAULT NEXTVAL('TB_MATHEUS_MEDEIROS_JOGOS_SEQ')
NOT NULL,
TITULO
VARCHAR(100)
NOT NULL,
GENERO
VARCHAR(30)
NOT NULL,
ANO_LANCAMENTO
NUMERIC(4)
NOT NULL,
PRODUTORA
VARCHAR(50)
NOT NULL,
NOTA_MEDIA
NUMERIC(3,1),
DESCRICAO
VARCHAR(500),
CONSTRAINT PK_MM_JOGOS
PRIMARY KEY (CODIGO),
CONSTRAINT CK_MM_JOGOS_TITULO
CHECK (LENGTH(TITULO) BETWEEN 3 AND 100),
CONSTRAINT CK_MM_JOGOS_ANO
CHECK (
ANO_LANCAMENTO BETWEEN 1970
AND EXTRACT(YEAR FROM CURRENT_DATE)
),
CONSTRAINT CK_MM_JOGOS_NOTA_MEDIA
CHECK (
NOTA_MEDIA IS NULL
OR NOTA_MEDIA BETWEEN 0 AND 10
)
);
</sql>
</changeSet>
<changeSet author="matheus.medeiros" id="matheus.medeiros-3">
<sql>
CREATE SEQUENCE TB_MATHEUS_MEDEIROS_AVALIACOES_SEQ
START WITH 1
INCREMENT BY 1
CACHE 1
NO CYCLE;
</sql>
</changeSet>
<changeSet author="matheus.medeiros" id="matheus.medeiros-4">
<sql>
CREATE TABLE TB_MATHEUS_MEDEIROS_AVALIACOES (
CODIGO NUMERIC(10) NOT NULL,
NOME VARCHAR(100) NOT NULL,
EMAIL VARCHAR(150) NOT NULL,
COMENTARIO VARCHAR(1000) NOT NULL,
NOTA NUMERIC(4,2) NOT NULL,
DATA_AVALIACAO DATE DEFAULT CURRENT_DATE NOT NULL,
ID_JOGO NUMERIC(10) NOT NULL,
CONSTRAINT PK_MM_AVALIACOES PRIMARY KEY (CODIGO),
CONSTRAINT FK_MM_AVAL_JOGO
FOREIGN KEY (ID_JOGO)
REFERENCES TB_MATHEUS_MEDEIROS_JOGOS (CODIGO),
CONSTRAINT CK_MM_AVAL_NOTA
CHECK (NOTA BETWEEN 0 AND 10)
);</sql>
</changeSet>
<changeSet author="matheus.medeiros" id="matheus.medeiros-3">
<preConditions onError="WARN" onFail="MARK_RAN" onSqlOutput="IGNORE">
<not>
<sequenceExists sequenceName="TB_MATHEUS_MEDEIROS_AVALIACOES_SEQ" />
</not>
</preConditions>
<sql endDelimiter=";" splitStatements="true" stripComments="false">
CREATE SEQUENCE TB_MATHEUS_MEDEIROS_AVALIACOES_SEQ
START WITH 1 INCREMENT BY 1 CACHE 1 NO CYCLE;
</sql>
</changeSet>
CODIGO
NUMERIC(10)
DEFAULT NEXTVAL('TB_MATHEUS_MEDEIROS_AVALIACOES_SEQ')
NOT NULL,
NOME
VARCHAR(100)
NOT NULL,
EMAIL
VARCHAR(150)
NOT NULL,
COMENTARIO
VARCHAR(300),
NOTA
NUMERIC(3,1),
DATA_AVALIACAO
TIMESTAMP
DEFAULT CURRENT_TIMESTAMP
NOT NULL,
ID_JOGO
NUMERIC(10)
NOT NULL,
CONSTRAINT PK_MM_AVALIACOES
PRIMARY KEY (CODIGO),
CONSTRAINT UK_MM_AVAL_EMAIL_JOGO
UNIQUE (EMAIL, ID_JOGO),
CONSTRAINT FK_MM_AVAL_JOGO
FOREIGN KEY (ID_JOGO)
REFERENCES TB_MATHEUS_MEDEIROS_JOGOS (CODIGO),
CONSTRAINT CK_MM_AVAL_NOTA
CHECK (
NOTA IS NULL
OR NOTA BETWEEN 0 AND 10
)
);
</sql>
</changeSet>
</databaseChangeLog>