You are on page 1of 16

Coordenao Geral de Tecnologia da Informao - CGTI

Diretriz de Modelagem de Banco de Dados


Verso 1.1

Coordenao Geral de Tecnologia da Informao - CGTI


MAPA - Ministrio da Agricultura, Pecuria e Abastecimento

Verso 1.1

Diretriz de Modelagem de Banco de Dados

Data: 25/06/2012

Histrico da Reviso
Data

Verso

07/05/2012

1.0

Aprovao da diretriz

Prsio Mairon

20/07/2012

1.1

Alterao do padro de nomenclatura


do scripts

Prsio Mairon

MAPA/SE/SPOA/CGTI.

Descrio

Autor

Pgina 2 de 16

Coordenao Geral de Tecnologia da Informao - CGTI


MAPA - Ministrio da Agricultura, Pecuria e Abastecimento

Verso 1.1

Diretriz de Modelagem de Banco de Dados

Data: 25/06/2012

ndice
1.

INTRODUO ............................................................................................................................................. 4

2.

DIRETRIZES ................................................................................................................................................ 4
2.1
REPOSITRIO ............................................................................................................................................ 4
2.2
NOMENCLATURA DE OBJETOS DE BANCO ................................................................................................ 5
2.2.1
Schema............................................................................................................................................. 6
2.2.2
Usurio de Conexo ........................................................................................................................ 6
2.2.3
Role .................................................................................................................................................. 6
2.2.4
Tabela/Entidade .............................................................................................................................. 6
2.2.5
Tabela AssociAtiva .......................................................................................................................... 7
2.2.6
Atributo/Coluna ............................................................................................................................... 8
2.2.7
Sequence ........................................................................................................................................ 10
2.2.8
Constraint ...................................................................................................................................... 10
2.2.9
ndice ............................................................................................................................................. 11
2.2.10
Package ......................................................................................................................................... 12
2.2.11
Synomyn......................................................................................................................................... 12
2.2.12
Procedure ...................................................................................................................................... 12
2.2.13
Function......................................................................................................................................... 12
2.2.14
Tablespace ..................................................................................................................................... 12
2.2.15
Trigger ........................................................................................................................................... 12
2.2.16
View/Materialized View ................................................................................................................. 13
2.3
TABELAS DE HISTRICO ......................................................................................................................... 14
2.3.1
Nome de tabela .............................................................................................................................. 14
2.3.2
Sequence ........................................................................................................................................ 14
2.3.3
Constraint ...................................................................................................................................... 14
2.3.4
Indice ............................................................................................................................................. 15
2.4
AUDITORIA ............................................................................................................................................. 15
2.5
MODELO DE ENTIDADE-RELACIONAMENTO ........................................................................................... 15
2.5.1
Tipo de modelo de dados ............................................................................................................... 15
2.5.2
Propriedades do modelo ................................................................................................................ 15
2.5.3
Exibio de tabelas........................................................................................................................ 15
2.5.4
Padro de cores de tabelas............................................................................................................ 15
2.5.5
Comentrios .................................................................................................................................. 15
2.5.6
Volumetria ..................................................................................................................................... 16
2.5.7
Gerao de Scripts ........................................................................................................................ 16
2.5.8
Disponibilizao de Scripts ........................................................................................................... 16

MAPA/SE/SPOA/CGTI.

Pgina 3 de 16

Coordenao Geral de Tecnologia da Informao - CGTI


MAPA - Ministrio da Agricultura, Pecuria e Abastecimento

Verso 1.1

Diretriz de Modelagem de Banco de Dados

Data: 25/06/2012

Diretriz de Banco de Dados


1.

INTRODUO
Este documento tem por objetivo definir regras de modelagem de banco de dados.

2.

DIRETRIZES
2.1 REPOSITRIO
Todos os artefatos de banco de dados devero ser armazenados e nomeados seguindo a
estrutura abaixo:

Ilustrao 1 - Estrutura de diretrios de Banco de Dados

Diretrio

Tipo de
Arquivo

Padro de Nomenclatura

Descrio

Modelo de dados do sistema. O


artefato dever ser nico para o
projeto.
Anlise e Design
Artefato utilizado para documentar
Artefato de
dvidas e ajustes encontrados
Reviso de SIGLA_RevisaoModeloDados
pela equipe de banco de dados do
MER
MAPA no MER do projeto.
Documento de referncia de
Detalhamento
implantao de banco de dados
SIGLA_DetalhamentoImplantacao_Banc
Implantao
de
de sistema. Contem a lista de
oDados
Implantao
scripts de um projeto e a ordem de
sua execuo.
Script que prov privilgios de
SIGLA_<ambiente>_DCL_<n
tabelas, sequences e views nas
incremental com 3 dgitos>_grant
roles do schema.
Script de
Implementao ->
Script que prov privilgios de um
Grant
Banco de Dados -> DCL
objeto de um schema para outro
SIGLA_<ambiente>_DCL_<n
usurio (ou schema), permitindo
incremental com 3 dgitos
>_grant_option
que este outro usurio conceda o
mesmo privilgio a outro usurio
MER

MAPA/SE/SPOA/CGTI.

SIGLA_ModeloDados

Pgina 4 de 16

Coordenao Geral de Tecnologia da Informao - CGTI


MAPA - Ministrio da Agricultura, Pecuria e Abastecimento

Verso 1.1

Diretriz de Modelagem de Banco de Dados

Data: 25/06/2012
(ou schema) ou role.

SIGLA_<ambiente>_DCL_<n
incremental com 3 dgitos
>_grant_references

Implementao ->
Banco de Dados -> DDL

Implementao ->
Banco de Dados -> DML
Implementao ->
Banco de Dados ->
Outros

Script de
Revoke

SIGLA_<ambiente>_DCL_<n
incremental com 3 dgitos >_revokes

Script de
View
Script de
Trigger

SIGLA_<ambiente>_DDL_<n
incremental com 3 dgitos >_views
SIGLA_<ambiente>_DDL_<n
incremental com 3 dgitos >_triggers

Script de
Tabela

SIGLA_<ambiente>_DDL_<n
incremental com 3 dgitos >_tabelas

Script de
Function
Script de
Procedure
Script de
Carga
Script

SIGLA_<ambiente>_DDL_<n
incremental com 3 dgitos >_functions
SIGLA_<ambiente>_DDL_<n
incremental com 3 dgitos >_procedures
SIGLA_<ambiente>_DML_<n
incremental com 3 dgitos >_carga
SIGLA_<ambiente>_<objetivo>

Script que prov privilgios de


tabelas de outro schema para
fazer um relacionamento com o
schema.
Script que remove privilgios de
objetos de banco de dados a
usurios ou roles do schema.
Contem o conjunto de views do
projeto.
Contem o conjunto de triggers de
um projeto.
Script contendo todas as tabelas,
sequence, constraint e ndex do
projeto.
Script contendo todas as functions
do projeto.
Script contendo todas as
procedures do projeto.
Script contendo carga de dados do
projeto.
Scripts que no se encaixam nas
situaes acima devero ser
inseridos neste diretrio.

Observao: o campo n incremental, existente no nome dos scripts, tem por objetivo
auxiliar na ordenao e execuo destes. O incremento dever ser em relao ordem de
execuo do tipo de script.
Exemplo:
Primeiro script DDL: SIGLA_desenv_DDL_001_tabela
Segundo script DDL: SIGLA_desenv_DDL_002_view
Terceiro script DDL: SIGLA_desenv_DDL_003_tabela
Primeiro script DCL: SIGLA_desenv_DCL_001_grants
Segundo script DCL: SIGLA_desenv_DCL_002_revokes
Terceiro script DCL: SIGLA_desenv_DCL_003_grants
2.2 NOMENCLATURA DE OBJETOS DE BANCO

Possuir no mximo 30 caracteres;


Devero ser grafados em maisculo;
Devero ser escritos no singular;
Devero ser iniciados por letras;
No dever possuir caracteres especiais, salvo underline;
O nome de um objeto dever ser nico no banco de dados. Excees apenas com
autorizao do banco de dados;
Deve-se evitar utilizao de termos que causem interpretao dbia. Na
impossibilidade de evit-los, especifique-os com qualificadores que os tornem claros
e absolutos;
No devero ser utilizados jarges e palavras sem significado prprio.

MAPA/SE/SPOA/CGTI.

Pgina 5 de 16

Coordenao Geral de Tecnologia da Informao - CGTI


MAPA - Ministrio da Agricultura, Pecuria e Abastecimento

Verso 1.1

Diretriz de Modelagem de Banco de Dados

Data: 25/06/2012

2.2.1

SCHEMA

Dever ser a sigla do sistema + o sufixo _MAPA, com exceo para schemas
corporativos;

Exemplo:
SIPE_MAPA.

2.2.2

USURIO DE CONEXO

Dever ser o nome do SCHEMA, acrescido do sufixo _APL;

Exemplo:
SIPE_MAPA_APL.
2.2.3

ROLE
1. Usurio de Aplicao
Ser formado pelo prefixo R_ + o nome do SCHEMA + sufixo _APL.
Exemplo:
R_SIPE_MAPA_APL.
2. Gestor de Aplicao
Ser formado pelo prefixo R_ + o nome do SCHEMA + sufixo _ADM.
Exemplo:
R_SIPE_MAPA_ADM.
3. Usurio de Consulta
Ser formado pelo prefixo R_ + o nome do SCHEMA + sufixo _CONS.
Exemplo:
R_ SIPE_MAPA_CONS.
4. Usurio de Execuo
Ser formado pelo prefixo R_ + o nome do SCHEMA + sufixo _EXEC.
Exemplo:
R_ SIPE_MAPA_EXEC.

2.2.4

TABELA/ENTIDADE
O nome de uma tabela dever ser composto por prefixo, conforme descriminado
abaixo, + o qualificador da tabela.

Nomenclatura
A_%
B_%_Data
MAPA/SE/SPOA/CGTI.

Detalhe

Exemplos

Prefixo usado em tabelas auxiliares


A_CARGA_GTA
que no importam e nem exportam
A_ENDERECO_CORREIOS
FK.
Prefixo usado para definir tabelas de
B_MUNICIPIO_20120505
backup, sendo necessrio informar a
Pgina 6 de 16

Coordenao Geral de Tecnologia da Informao - CGTI


MAPA - Ministrio da Agricultura, Pecuria e Abastecimento

Verso 1.1

Diretriz de Modelagem de Banco de Dados

Data: 25/06/2012

data de criao da tabela no nome


(padro: aaaammdd).
Prefixo de tabelas externas e
carregadas pelo loader (espelho),
normalmente originadas de carga de
dados provenientes de arquivos ou de
digitao
Prefixo para tabelas usadas para
armazenar informaes histricas
Prefixo de tabelas de arquivo morto
(no so mais atualizadas, mas ainda
devem ser mantidas no banco para
consulta)
Prefixo de tabelas (resultado) que
agregam informaes que visam
facilitar a consulta / emisso de
relatrios
para
os
usurios
(normalmente so tabelas cujas
informaes so resultado de um
processo de carga on-line / batch e
que no possuem FK)

E_%

H_%

M_%

R_%

S_%

Prefixo de tabelas temporrias, que


fazem parte do modelo de dados e
tm um tempo de vida determinado.
Prefixo de tabelas utilizadas para
entrada / sada de informaes via
WEB.
Prefixo de tabelas que eram de
sistema e que devero ser excludas
do banco em data determinada.

W_%

X_%
JN_%

Prefixo para tabelas de auditoria

GT_%

Sufixo
para
temporrias

2.2.5

tabelas

H_PESSOA_FISICA
M_ORGAO
M_PROPRIETARIO_PROPRIEDA
DE

R_ANIMAL_EXPORTADO

S_PESSOA
S_MUNICIPIO

Prefixo de tabelas do sistema.

T_%

E_MUNICIPIO

T_CARGA_ORGAO

W_PESSOA_FISICA
X_EMAIL
X_ORGAO
JN_AUDIT

globais

TABELA ASSOCIATIVA
Dever ser formado por prefixo (vide tabela acima) + _ + nome da primeira tabela
sem prefixo + _ + nome da segunda tabela sem prefixo;
Exemplo:
S_HIBRIDO_SER_VIVO.
Nos casos onde o nome ultrapassa o limite de caracteres permitidos (mximo 30),
dever ser utilizado um verbo significativo na 3 pessoa do singular.
Exemplo:
S_PESSOA_POSSUI_ENDERECO.

MAPA/SE/SPOA/CGTI.

Pgina 7 de 16

Coordenao Geral de Tecnologia da Informao - CGTI


MAPA - Ministrio da Agricultura, Pecuria e Abastecimento

Verso 1.1

Diretriz de Modelagem de Banco de Dados

Data: 25/06/2012

2.2.6

ATRIBUTO/COLUNA
Todo atributo dever possuir um breve comentrio sobre sua relevncia;
Dever ser nico na entidade;
Nos casos onde o atributo estiver depreciado ou for obsoleto e no puder ser
excludo, dever ser inserido o seguinte comentrio, substituindo o atual: Esta coluna
ser descontinuada. Evite utiliz-la.;
Atributos que especificam a tabela devero ser NOT NULL;
Exemplo:
Tabela: S_CURSO.
Coluna: NM_CURSO.
Atributo tipo CLOB: ser permitido somente 1 por schema e quando previamente
autorizado pelo AD;
Atributo tipo CHAR: somente dever ser utilizado em casos onde o contedo for
alfanumrico e totalmente preenchido e no ultrapasse o limite de 10 caracteres;
Atributo tipo NUMBER: dever ser utilizado para atributos que envolvam
clculos, percentuais, nmeros simples e outros dados de natureza numrica;
Dever possuir sufixo identificando seu tipo, conforme tabela abaixo:

Classe

Prefixo

Cdigo

CD

Classificador

CS

Identificador

ID

Nmero

NR

Descrio

DS

Nome

NM

MAPA/SE/SPOA/CGTI.

Detalhe
Deve ser utilizado em dados que possuem
valores pr-definidos em outro sistema ou que
seja resultado de frmulas especiais que geram
um cdigo nico. necessrio informar no
comentrio da coluna a procedncia do cdigo,
se for gerado pela aplicao deve-se informar
como ele ser gerado.
Deve ser utilizada em colunas que possuem
uma lista de valores pr-definidas at 7 opes e
que podem ser alfabticas, numricas ou
alfanumricas. Os valores da lista ficam
definidos atravs de uma Check Constraint (CK)
e devem ter preenchimento obrigatrio. O tipo do
campo dever ser NOT NULL. Deve-se informar
o significado de cada opo no comentrio da
coluna. Nos casos onde as opes ultrapassem
7 criar uma tabela de sistema para especificar o
domnio.
Identificador
de
chave
primria
cujo
preenchimento ser sempre sequencial.
Atribuda aos dados de natureza numrica cuja
identificao se faz por valores absolutos.
Atribuda aos dados cujo contedo, livre e em
forma discursiva, se utiliza, em geral, para
descrever algo associado ao objeto. A sua
utilizao deve ter tamanho limitado. Dever ser
do tipo VARCHAR2.
Atribuda aos dados de natureza alfabtica ou
alfanumrica cujo contedo expressa uma
denominao por extenso e composta de

Exemplo

CD_CARGO_SIAPE

CS_DEPENDENTE

ID_PESSOA
NR_CNPJ

DS_ADITIVO_CONTRATO
DS_URL_DOCUMENTO

NM_PESSOA_FISICA
Pgina 8 de 16

Coordenao Geral de Tecnologia da Informao - CGTI


MAPA - Ministrio da Agricultura, Pecuria e Abastecimento

Verso 1.1

Diretriz de Modelagem de Banco de Dados

Data: 25/06/2012

palavras, abreviaturas ou ambas.


Sigla

SG

Endereo

ED

Data_Hora

DH

Hora

HR

Ano

AN

Dia

DD

Ms

ME

Data

DT

Valor

VL

Peso

PS

Objeto
Binrio

OB

Percentual

PE

Quantidade

QT

Status

ST

MAPA/SE/SPOA/CGTI.

Atribuda aos dados de natureza alfabtica ou


alfanumrica que designam siglas.
Atribuda aos dados de natureza alfabtica ou
alfanumrica utilizadas para expressar um
endereo ou qualquer de suas partes.
Atribuda aos dados de natureza numrica que
expressam o dia, ms, ano, hora, minuto e
segundo (para os casos em que a granularidade
da informao for at segundos, usar o tipo
DATE, se a granularidade for at fraes de
segundo, usar TIMESTAMP).
Atribuda aos dados de natureza numrica que
expressam uma hora em qualquer formato com
ou sem preciso de minutos e/ou quaisquer
outras fraes.
Atribuda aos dados de natureza numrica que
expressam o ano no calendrio civil.
Atribuda aos dados de natureza numrica que
expressam o dia no calendrio civil.
Atribuda aos dados de natureza numrica que
expressam o ms no calendrio civil.
Atribuda aos dados de natureza numrica que
expressam o dia, ms e ano no calendrio civil.
Atribuda aos dados de natureza numrica que
expressam uma importncia monetria. Informar
no comentrio a Moeda que ser utilizada.
Atribuda aos dados numricos que expressam o
peso do objeto. Informar no comentrio a
Unidade se no houver um relacionamento com
CORPORATIVO_MAPA.S_UNIDADE_MEDIDA.
Atribuda aos dados que designam atributos
referentes a som e/ou imagem e/ou vdeo.
Atribuda aos dados de natureza numrica que
expressam uma parte de uma quantidade de
100 (cem) unidades.
Atribuda aos dados de natureza numrica que
determinam um conjunto de coisas e pessoas
consideradas como equivalentes e suscetveis
de aumento e diminuio. Ao nome-los devem
ser relacionados a uma unidade de medida para
expressar a real grandeza, exceto quando se
tratar de medida escalar do sistema decimal.
Prefixo de coluna de Indicador booleano de
estado, no nulo (2 opes). Apesar de ser um
booleano poder aceitar um valor que indica que
o conceito no deve ser aplicado para um
determinado objeto (registro). Esse valor de no
se aplica dever ser sempre o mesmo, cuja
sugesto X. A obrigatoriedade do campo

SG_UF
ED_PESSOA
ED_COMPLEMENTO

DH_CRIACAO_REGISTRO

HR_ABERTURA

AN_COMPETENCIA
DD_DEBITO
ME_VENCIMENTO
DT_NASCIMENTO
VL_SALARIO

PS_ITEM

OB_ASSINATURA
PE_INADIMPLENCIA

QT_ITEM

ST_CONFIRMADO

Pgina 9 de 16

Coordenao Geral de Tecnologia da Informao - CGTI


MAPA - Ministrio da Agricultura, Pecuria e Abastecimento

Verso 1.1

Diretriz de Modelagem de Banco de Dados

Data: 25/06/2012

dever ser NOT NULL.


Prazo

Atribuda aos dados de natureza numrica que


PZ_VALIDADE
expressam um intervalo de tempo.

PZ

Observao: O campo tipo TEMPO foi descontinuado. Para tal tipo de atributo, deve-se utilizar um
dos tipos de campo data listados acima.

2.2.7

SEQUENCE

2.2.8

Dever ser formado pelo prefixo SQ_ + o nome da tabela sem prefixo.
Exemplo:
SQ_ USUARIO

CONSTRAINT
1. Chave Primria (PK)
Dever ser formado pelo prefixo PK_ + o nome da tabela sem prefixo.
Exemplo:
PK_USUARIO
2. Chave Estrangeira (FK)
Dever ser formado pelo prefixo FK_ + o nome da tabela filha sem prefixo +
_ + nome da tabela pai sem prefixo.
Exemplo:
FK_USUARIO_PERFIL
Para tabelas que possuem mais de um relacionamento com a mesma tabela,
dever ser adotado o padro FK_ + nome da tabela filha sem prefixo + _
nome da tabela pai sem prefixo + _ + texto de referncia.
Exemplo:
FK_USUARIO_UF_NATURALIDADE
FK_USUARIO_UF_RESIDENCIA
3. Unique
Dever ser formado pelo prefixo UK_ + o nome da tabela sem prefixo + _
+ nome da coluna sem prefixo.
Exemplo:
UK_USUARIO_LOGIN
Nos casos onde a unique constraint formada por mais de uma coluna,
dever ser adotado o padro UK_ + o nome da tabela sem prefixo + descrio
da unique constraint.
Exemplo:
Tabela:
S_CONTA_CORRENTE
Colunas:
CD_CONTA_CORRENTE + CD_AGENCIA
Nome da Unique:
UK _CC_CONTA_AGENCIA
4. Check
Dever ser formado pelo prefixo CK_ + o nome da tabela sem prefixo + _

MAPA/SE/SPOA/CGTI.

Pgina 10 de 16

Coordenao Geral de Tecnologia da Informao - CGTI


MAPA - Ministrio da Agricultura, Pecuria e Abastecimento

Verso 1.1

Diretriz de Modelagem de Banco de Dados

Data: 25/06/2012

+ nome da coluna sem prefixo.


Exemplo:
CK_USUARIO_LOGIN
Nos casos onde o check constraint formada por mais de uma coluna,
dever ser adotado o padro CK_ + o nome da tabela sem prefixo + descrio
do check constraint.
Exemplo:
Tabela:
S_USUARIO
Colunas:
CD_RG + NR_CPF
Nome do Check:
CK _USUARIO_IDENTIFICACAO
Por padro Oracle, as check do tipo NOT NULL so criadas
automaticamente. Estas devero ser renomeadas seguindo o padro: prefixo
CK_ + nome da tabela sem prefixo + _ + nome da coluna
Exemplo:
CK_USUARIO_NM_LOGIN
2.2.9

NDICE
1. Chave Secundria
Dever ser formado pelo prefixo I_ + o nome da tabela sem prefixo + _ +
nome da coluna.
Exemplo:
I_USUARIO_NM_LOGIN
2. ndice de Chave Estrangeira (FK)
Dever ser formado pelo prefixo I_ + nome da constraint.
Exemplo:
I_FK_USUARIO_PERFIL
3. ndice para Chave Primria (PK)
Dever ser utilizado o mesmo nome da Chave Primria (PK).
Exemplo:
PK_USUARIO
4. ndice criado pelo DBA para melhorar performance
Dever ser formado pelo prefixo IAD_ + nome da tabela sem prefixo + _ +
nome da coluna.
Exemplo:
IAD_PF_NM_PESSOA_FISICA
5. ndice de Unique
Dever ser formado pelo prefixo I_UK_ + nome da tabela sem prefixo + _
+ nome da coluna;
Exemplo:
I_UK_PF_NM_PESSOA_FISICA
Nos casos onde o index unique possuir mais de uma coluna, dever ser
formado pelo prefixo I_UK_ + nome da tabela sem prefixo + _ + descrio
para unique.

MAPA/SE/SPOA/CGTI.

Pgina 11 de 16

Coordenao Geral de Tecnologia da Informao - CGTI


MAPA - Ministrio da Agricultura, Pecuria e Abastecimento

Verso 1.1

Diretriz de Modelagem de Banco de Dados

Data: 25/06/2012

Exemplo:
Tabela:
Colunas:
Nome da Unique:
2.2.10

S_CONTA_CORRENTE
CD_CONTA_CORRENTE + CD_AGENCIA
I_UK _CC_CONTA_AGENCIA

PACKAGE
1. Nome de Package
Dever ser formado pelo prefixo PA_ + nome do pacote;
Exemplo:
PA_PESSOA
2. Corpo de Package
Dever ser formado pelo prefixo PB_ + nome do pacote;
Exemplo:
PB_PESSOA

2.2.11

SYNOMYN
Est proibido a utilizao de sinnimos, salva excees devidamente justificadas
e autorizadas pela rea de banco de dados do MAPA;
Nos casos autorizados, dever ser utilizado o mesmo nome do objeto.

2.2.12

PROCEDURE

2.2.13

O nome dever ser sugestivo e retratar o objetivo da procedure;


Dever ser formado pelo prefixo PC_ + nome da procedure;
Exemplo:
PC_AUTENTICA_USUARIO_APLICACAO
FUNCTION

2.2.14

O nome dever ser sugestivo e retratar o objetivo da function;


Dever ser formado pelo prefixo FC_ + nome da function;
Exemplo:
FC_RETIRA_ACENTO
TABLESPACE

1. Para dados
Dever ser formado pelo prefixo D_ + sigla do sistema;
Exemplo:
D_GRH
2. Para ndices
Dever ser formado pelo prefixo I_ + sigla do sistema;
Exemplo:
I_GRH
2.2.15

TRIGGER
1. Regra de Negcio
a) Before
Ser executado antes da operao;

MAPA/SE/SPOA/CGTI.

Pgina 12 de 16

Coordenao Geral de Tecnologia da Informao - CGTI


MAPA - Ministrio da Agricultura, Pecuria e Abastecimento

Verso 1.1

Diretriz de Modelagem de Banco de Dados

Data: 25/06/2012

Dever ser formado pelo prefixo TG_B_ + tipo de evento + _ + nome


da tabela;
Exemplo:
Insert

TG_B_I_S_CONTA_CORRENTE
Update

TG_B_U_S_CONTA_CORRENTE
Delete

TG_B_D_S_CONTA_CORRENTE
Insert, Update, Delete

TG_B_IUD_S_CONTA_CORRENTE
No caso onde a trigger for exclusiva da coluna, dever ser acrescido o
nome da coluna ao nome da trigger;
Exemplo:
Insert

TG_B_I_CC_VL_SALDO
Update

TG_B_U_CC_VL_SALDO
Delete

TG_B_D_CC_VL_SALDO
Insert, Update, Delete

TG_B_IUD_CC_VL_SALDO
b) After
Ser executado depois da operao;
Dever ser formado pelo prefixo TG_B_ + tipo de evento + _ + nome
da tabela;
Exemplo:
Insert

TG_A_I_S_CONTA_CORRENTE
Update

TG_A_U_S_CONTA_CORRENTE
Delete

TG_A_D_S_CONTA_CORRENTE
Insert, Update, Delete

TG_A_IUD_S_CONTA_CORRENTE
No caso onde a trigger for exclusiva da coluna, dever ser acrescido o
nome da coluna ao nome da trigger;
Exemplo:
Insert

TG_A_I_CC_VL_SALDO
Update

TG_A_U_CC_VL_SALDO
Delete

TG_A_D_CC_VL_SALDO
Insert, Update, Delete

TG_A_IUD_CC_VL_SALDO
2. DDL
Dever ser formado pelo prefixo TG_DDL_ + nome do objeto;
Exemplo:
TG_DDL _BANCO
3. Sequence
Dever ser formado pelo prefixo TG_SQ_ + nome da tabela + _ + nome
da coluna;
Exemplo:
TG_SQ_S_PESSOA_ID_PESSOA
2.2.16

VIEW/MATERIALIZED VIEW
1. Regras
Views que contenham somente tabelas do CORPORATIVO dever fica no
CORPORATIVO_MAPA;
No caso onde a view contenha tabelas do CORPORATIVO e de outro

MAPA/SE/SPOA/CGTI.

Pgina 13 de 16

Coordenao Geral de Tecnologia da Informao - CGTI


MAPA - Ministrio da Agricultura, Pecuria e Abastecimento

Verso 1.1

Diretriz de Modelagem de Banco de Dados

Data: 25/06/2012

schema dever ser criada uma view no CORPORATIVO e outra no schema,


sendo que a view do schema acessando a do corporativo. Para tanto,
necessrio que seja atribudo a view do schema grant de acesso a view do
CORPORATIVO;
Exemplo:
GRANT SELECT ON CORPORATIVO_MAPA.VW_ENDERECO_CONTATO_PJ
TO SNCUA WITH GRANT OPTION;
grant select on SNCUA.VW_ENDERECO_CONTATO_PJ to
r_sncua_apl;
Views com tabelas do prprio schema devero ficar no prprio schema;
Views com tabelas de 2 schemas devero ficar no schema do sistema que
consumir a view.
2. View
O nome dever ser sugestivo e retratar o objetivo da view;
Dever ser formado pelo prefixo VW_ + nome da view.
Exemplo:
VW_USUARIO_SISTEMA
3. Materialized View
Est proibido a utilizao de Materialized View, salva excees devidamente
justificadas e autorizadas pela rea de banco de dados do MAPA;
Nos casos autorizados, dever ser formado pelo prefixo MW_ + nome da
materialized view;
2.3 TABELAS DE HISTRICO
2.3.1

NOME DE TABELA

2.3.2

SEQUENCE

2.3.3

Dever ser formado pelo prefixo H_ + o nome da tabela.


Exemplo:
H_ USUARIO

Dever ser formado pelo prefixo SQ_ H_ + o nome da tabela.


Exemplo:
SQ_H_USUARIO
CONSTRAINT
1. Chave Primria (PK)
Dever ser formado pelo prefixo PK_ H_ + o nome da tabela.
Exemplo:
PK_ H_USUARIO
2. Chave Estrangeira (FK)
Dever ser formado pelo prefixo FK_ H_ + o nome da tabela filha + _ +
nome da tabela pai sem prefixo.
Exemplo:
FK_ H_USUARIO_PERFIL

MAPA/SE/SPOA/CGTI.

Pgina 14 de 16

Coordenao Geral de Tecnologia da Informao - CGTI


MAPA - Ministrio da Agricultura, Pecuria e Abastecimento

Verso 1.1

Diretriz de Modelagem de Banco de Dados

Data: 25/06/2012

2.3.4

INDICE
1. ndice criado pelo DBA para melhorar performance
Dever ser formado pelo prefixo IAD_ H_ + o nome da tabela.
Exemplo:
IAD_H_PF_USUARIO

2.4 AUDITORIA
Dever ser seguido o padro definido no Roteiro de Auditoria de Banco de Dados.
2.5 MODELO DE ENTIDADE-RELACIONAMENTO
2.5.1

TIPO DE MODELO DE DADOS


Os modelos devero ser criados com o tipo Fsico/Lgico.

2.5.2

PROPRIEDADES DO MODELO

Os campos Name e Author devero ser preenchidos com a sigla do sistema e


CGTI respectivamente;

O campo definition dever ser preenchido com a finalidade do sistema;


Os campos acima podem ser encontrados acessado o menu MODEL -> MODEL
PROPERTIES.

2.5.3

EXIBIO DE TABELAS

As opes COLUMN DATATYPE, NULL OPTION, PRIMARY KEY


DESIGNATOR, FOREIGN KEY DESIGNATOR, ALTERNATE KEY DESIGNATOR e
TABLE OWNER, referentes table display devero ser habilitadas;

As opes VIEWS, VIEWS RELATIONSHIP, VIEW COLUNM EXPRESSION,


referentes data base view display devero ser habilitadas;

As opes FOREIGN KEY CONSTRAINT NAME e CARDINALITY, referentes


relationship display devero ser habilitadas.
As opes descritas acima podero ser acessadas ao clicar com o boto direito do
mouse em uma rea sem objetos.

2.5.4

PADRO DE CORES DE TABELAS

Tabelas do CORPORATIVO MAPA devero possuir a cor azul turquesa (linha


2 coluna 5 da tabela de cores);

Tabelas do AUTENTICAO devero possuir cor cinza (linha 6 coluna 4 da


tabela de cores);

Tabelas novas devero possuir a cor branca;

Tabelas validadas pela equipe de banco de dados MAPA devero possuir a cor
amarela (linha 2 coluna 2 da tabela de cores);

Tabelas com alteraes devero ser marcadas com a cor vermelha (linha 2
coluna 1 da tabela de cores);

Os objetos do tipo VIEW devero seguir as definies descritas acima.

2.5.5

COMENTRIOS
Os objetos tabela, coluna, trigger e view devero possuir comentrios sobre suas

MAPA/SE/SPOA/CGTI.

Pgina 15 de 16

Coordenao Geral de Tecnologia da Informao - CGTI


MAPA - Ministrio da Agricultura, Pecuria e Abastecimento

Verso 1.1

Diretriz de Modelagem de Banco de Dados

Data: 25/06/2012

definies.

Os objetos do tipo tabela devero possuir em seu comentrio o seu nvel de


sigilo. Estes nveis devero variar entre 1 e 5, proporcional ao grau de sigilo da
informao;

Os objetos do tipo ndex devero possuir comentrios deixando claro se


servem para melhorar a performance ou melhorar integridade da tabela.
2.5.6

VOLUMETRIA
Todas as tabelas devero possuir uma estimativa quanto ao nmero de registros
estimado por ms.
Esta opo pode ser informada/acessada atravs do clique no boto direito em
cima da tabela -> table properties -> volumetrics.

2.5.7

GERAO DE SCRIPTS

Dever ser desmarcada a opo generate das tabelas/entidades do que no


fazem parte do schema do projeto;

Para cada instruo SQL que importe em leitura ou escrita no banco de dados,
deve se ter um bloco de declarao (comentrios utilizando /* */) informando as
tabelas que sero lidas, quais sero escritas e objetivo geral da instruo;

Comandos e clausulas mais complexas devero ser comentadas, utilizando - ;

Blocos com grande quantidade de INSERT, UPDATE ou DELETE devem ser


declarados apenas no comeo, informando a origem dos dados, destino e o
objetivo das instrues;

Os scripts devero ser gerados de acordo com sua categoria (view, tabela,
function, procedure, carga, grants, etc) e armazenados de acordo com seu tipo
(DDL, DML, DCL e OUTROS). Dever existir somente um script para cada
categoria, salvo em caso de evolues e alteraes;

Os scripts de sequence, constraint e ndex devero ser includos nos scripts de


tabelas;

Nos casos de dependncia (view dependente de function ou vice-versa), a


parte dependente dever ser retirada de seu script e ser executado aps a
execuo do script pai;
Exemplo:
VW_PESSOA_FISICA depende FC_VALIDA_SERVIDOR

Todos os scripts bem como a ordem de sua execuo devero estar


documentados no artefato Detalhamento de Implantao de Bando de dados.

2.5.8

DISPONIBILIZAO DE SCRIPTS
Os scripts gerados devero ser disponibilizados de acordo com sua natureza os
diretrios de banco de dados, conforme item 2.1.

MAPA/SE/SPOA/CGTI.

Pgina 16 de 16

You might also like