Código: PG-1T0-00016-I - Hartmann Consultoria em TI

Propaganda
Código:
PG-1T0-00016-I
PADRÃO DE NOMENCLATURA DE OBJETOS DE BANCO DE DADOS
Órgão aprovador:
Órgão gestor:
TIC/IDTA
TIC/IDTA/AIM
Data de implantação:
27/05/2008
Assinatura: Martha Gomes de
Souza - A271
Tipo de Cópia Impressa:
Não Controlada
1. OBJETIVO
Estabelecer padrões de nomenclatura de objetos de banco de dados
2. APLICAÇÃO
Às Gerências da TIC envolvidas em projetos de banco de dados. O
desenvolvimento para o SAP R/3 segue nomenclatura específica conforme padrão
PE-2T0-00010.
3. DOCUMENTOS DE REFERÊNCIA
PE-2T0-00010 - Padrão de Nomenclatura de Objetos de Banco de Dados do
SAP R/3.
PE-1T0-00165 - Administrar Dados
4. DEFINIÇÕES
SGBD - Sistema de Gerência de Banco de Dados
OLTP - On-line Transactional Processing
Catálogo de Aplicações - Aplicativo que registra os sistemas em desenvolvimento
ou em produção no âmbito da TI
5. OBJETO
5.1 Introdução
O conjunto de objetos padronizáveis do ambiente de desenvolvimento de sistemas
de informação é extenso, tanto na área de OLTP quanto na área de
processamento analítico e de suporte à decisão
Definiu-se como escopo para este documento apenas os objetos que são
armazenados nos Sistemas de Gerência de Banco de Dados (SGBD) oficializados
para uso na TIC
Os objetos do ambiente informacional da TIC-E&P seguem a nomenclatura
descrita no item 3.2 Modelo Físico do Manual de Padronização - Ambiente
Informacional TIC-E&P (Anexo 4)
5.2 Considerações gerais
Para o nome de qualquer objeto, as seguintes regras devem ser seguidas:
- Deve começar com uma letra
- Deve conter apenas alfanuméricos (A-Z,0-9) e “underscore” (_),
considerando as limitações de tamanho para nomes nos ambientes
utilizados, se existirem
A Área de Administração de Dados é responsável pela divulgação desse padrão e
pela verificação de seu uso pelos desenvolvedores de aplicações
5.3 Objetos Estruturais do Ambiente de Dados
5.3.1 Sistema
<texto_significativo>, com até 10 caracteres
No anexo 1 encontram-se as variações para a TIC-E&P
No anexo 2 encontram-se as variações para a TIC/ADS-TI
5.3.2 Banco de Dados
<texto_significativo>, considerando a limitação de tamanho nos ambientes
utilizados
No anexo 1 encontram-se as variações para a TIC-E&P
5.3.3 Database Link
<banco de dados>_<texto significativo>, onde < texto significativo > é opcional
Ex.: PEPRNCE, DEPWBA, BCP5_OG00_CONSULTA
5.3.4 Tablespace
O nome da Tablespace deve ser composto por:
Owner_<tipo de objeto>_NN, onde:
- <tipo de Objeto> ( opcional ) pode ser:

DADOS
ÍNDICES

LOBS
- NN = Número seqüencial ( opcional )
Ex.: OG00_01
No anexo 1 encontram-se as variações para a TIC-E&P
No anexo 2 encontram-se as variações para a TIC/ADS-TI
5.4 Objetos de Modelo de Dados
5.4.1 Comentários
Os comentários de colunas e tabelas devem ser preenchidos
Ex.:
COMMENT ON TABLE ACO.BLOCO IS 'Definição Técnica da LEI No. 9478'
"Parte de uma bacia sedimentar, formada por um prisma vertical de profundidade
indeterminada, com superfície poligonal definida pelas coordenadas geográficas de
seus vértices, onde são desenvolvidas atividades de exploração ou produção de
petróleo e gás natural."
COMMENT ON COLUMN ACO.BLOCO.BLOC_MD_BAT_MIN IS
'Batimetria mínima(metros)'
5.4.2 Owner
<texto_significativo>, com até 7 caracteres
No anexo 1 encontram-se as variações para a TIC-E&P
No anexo 2 encontram-se as variações para a TIC/ADS-TI
5.4.3 Tabela
Texto livre e significativo, observando que o nome deve estar no singular e, se
composto por duas ou mais palavras, estas devem estar separadas por
“underscore”:
<termo1>_<termo2>_..._<termoN>
Deve ser um nome preferencialmente no masculino e em letras maiúsculas
O termo deve possuir no mínimo 2 letras. Termo com 2 letras só deve ser usado se
o termo já possuir uma sigla conhecida com este tamanho
Ex.: RG/UF
Não devem ser utilizados preposições e artigos na composição do nome
Evitar nomes técnicos e nomes próprios, exceto se for de grande conhecimento da
empresa
Ex.: SALDO_FGTS,
FOLHA_FERIAS
No anexo 1 encontram-se as variações para TIC-E&P
No anexo 3 encontram-se as variações para bancos multidimensionais usados na
TIC/ADS-TI
5.4.4 Visão (View)
VW_<termo1>_<termo2>_..._<termoN>
As colunas da visão devem possuir o mesmo nome da coluna da tabela de origem
No anexo 1 encontram-se as variações para a TIC-E&P
5.4.4.1
Visão Materializada (Materialized View)
MV_<termo1>_<termo2>_..._<termoN>
As colunas da visão devem possuir o mesmo nome da coluna da tabela de origem
No anexo 1 encontram-se as variações para a TIC-E&P
5.4.5 Mnemônico de Tabela
Utilizado como prefixo do nome da coluna de uma tabela, conforme citado no item
5.4.6 Coluna
Deve conter até quatro caracteres alfanuméricos (A-Z,0-9)
Se o nome da tabela for formado por uma única palavra, usar os quatro primeiros
caracteres
Ex.: EMPREGADO
EMPR
Se o nome da tabela for formado por duas palavras, usar os dois primeiros
caracteres de cada uma
Ex.: DM_EMPREGADO
DMEM
Se o nome da tabela for formado por três palavras, usar os dois primeiros
caracteres da primeira palavra, o primeiro caractere da segunda e o primeiro da
terceira palavra
Ex.: CT_CONTROLE_RELATORIO
CTCR
Quando o nome da tabela for formado por quatro ou mais palavras, usar os dois
primeiros caracteres da primeira palavra, e para os dois caracteres restantes
utilizar os primeiros caracteres das palavras mais significativas.
Ex.: MM_BASE_CONSULTA_ATRIBUTO_DIM
MMBA
Caso em uma mesma base de dados o procedimento acima gerar abreviaturas
iguais, as duplicidades devem ser resolvidas escolhendo-se outro modo de gerar
as abreviaturas
No anexo 1 encontram-se as variações para a TIC-E&P
5.4.5.1 Mnemônico de View
Para colunas de view, e materialized view, que são originadas de uma expressão,
será necessário criar um mnemônico para a view (materialized view). Considerar a
mesma regra para mnemônico de tabela, desprezando o prefixo VW (MV). Ver
item 5.4.5 Mnemônico de Tabela
Ex.: VW_PONTO_OPER
EX.: MV_PONTO_OPER
POOP
POOP
5.4.6 Coluna
<mnemônico tabela>_<código da classe>_<texto significativo>
Sobre “mnemônico tabela” ver o item 5.4.5 Mnemônico de Tabela
Para colunas de views, e também de 'materialized' views, originadas de uma
expressão considerar “mnemônico view” no lugar de “mnemônico tabela”. Ver o
item 5.4.5.1 Mnemônico de View
Quando a coluna fizer parte de uma chave estrangeira, seu nome deve ser igual ao
nome da coluna chave primária na tabela pai, inclusive o mnemônico da tabela
pai
Ex.: EMPR_NR_MATRICULA ( número da matrícula do empregado )
Os "códigos de classe", descritos a seguir, indicam o propósito de uso da coluna
CD Código
IN Indicador
DS Descrição
DT Data
VL Valor
NM Nome
NR Número
SG Sigla
TX Texto
MD Medida
PR Percentual
MM Multimídia
QN Quantidade
SQ Sequencial
CD – Código propriamente dito representando uma chave , identificador, tipo,
classificação, categoria, nível e tudo que requeira decodificação (CGC,
alínea, CPF, produto, etc.)
Ex.: - Código/identificador/cargo
- Código/identificador/unidade-federação
- Código/tipo/contrato
- Código/classificação/item-serviço
- Código/categoria/veiculo
- Código/nível salarial/empregado
- Código/grau-escolaridade/empregado
IN – Indicação de domínio restrito, no sentido de apontar (S, N), marcador (*),
sinal (+,-), elemento de distinção(conjunto alfanumérico)
Ex.: - Indicador/sinal-diferencial-pressão/canhoneio
- Indicador/status/fornecedor
- Indicador/aditivo/contrato
NR – Numeração cardinal livre que representa uma seqüência ou constante
Ex.: - Número/identidade/empregado
- Número/anuênios/empregado
SG – Abreviação ou simples conjunto de caracteres (com significado) que
identifica objetos do mundo real
Ex.: - Sigla/estado/local-embarque
- Sigla/identificadora/órgão
TX – Comentário livre, observação livre, explicação, exemplificação, significado,
etc
Ex.: - Texto/observação/equipamento
- Texto/explicação/processo
- Texto/exemplificação/amostra
- Texto/significado-avaliação/contrato
DS – Descrição de alguma coisa ou ser, sem formato pré-definido e sem regras
rígidas de preenchimento
Ex.: - Descrição/tipo
- Descrição/status
DT – Qualquer data (completa ou não) que exprime a data efetiva de um evento
Ex.: - Data/admissão/empregado
- Data/ano-mês-reajuste/contrato
MD – Número que exprime uma quantidade sujeita à medição tal como peso,
capacidade, área, profundidade, distância, perímetro, vazão, pressão,
densidade, velocidade, comprimento, etc
Ex.: - Medida/peso/equipamento
- Medida/capacidade/tanque
- Medida/área/campo
- Medida/profundidade/poço
- Medida/distância/local-entrega
- Medida/perímetro/local
- Medida/vazão/equipamento
- Medida/pressão/equipamento
- Medida/densidade/produto
- Medida/velocidade/navio
PR – Número que exprime uma percentagem ou taxa
Ex.: - Percentual/participação-lucro/empregado
- Percentual/ipi/item-material
MM – Elementos multimídia como gráficos, imagens, sons, filmes ou animações
Ex.: - Multimídia/foto/empregado
- Multimídia/gráfico/modelo
- Multimídia/filme/notícia
- Multimídia/som/mensagem
VL – Quantitativo exclusivamente monetário que exprime custo, preço,
pagamento, recebimento, etc
Ex.: - Valor/unitário/item-serviço
- Valor/fob/produto
- Valor/total/faturamento
- Valor/reembolso/contrato
NM – Nome completo ou abreviado de pessoa física/jurídica ou "objeto"
Ex.: - Nome/completo/empregado
- Nome/razão-social/companhia
- Nome/estado-território/unidade-federação
QN – Número que exprime uma quantidade obtida através de contagem do
objeto tratado, exceto valores monetários e medições, ou simplesmente
um quantitativo acumulado
Ex.: - Quantidade/total/embarque
- Quantidade/estoque/produto
SQ – Exprime campo sequencial ou auto incremento
Em relação ao "texto_signifcativo", não usá-lo de forma redundante com o "código
da classe", como por exemplo:
Ex.1: AVFI_CD_CODIGO
Ex.2: ATED_QN_QUANTIDADE
Ex.3: FUNC_NM_NOME_PAI
Ex.4: FUNC_DT_DATA_NASCIMENTO
( Tabela : AVALIACAO_FISICA )
( Tabela: ATIVIDADE_EDUCATIVA )
( Tabela :FUNCIONARIO )
( Tabela: FUNCIONARIO )
Usar:
Ex.1: AVFI_CD_AVALIACAO
Ex.2: ATED_QN_CONTRATADOS
Ex.3: FUNC_NM_PAI
Ex.4: FUNC_DT_NASCIMENTO
( Tabela : AVALIACAO_FISICA )
( Tabela: ATIVIDADE_EDUCATIVA )
( Tabela :FUNCIONARIO )
( Tabela :FUNCIONARIO )
5.4.7 Restrições de Integridade ( Constraints )
5.4.7.1 Chave Primária ( Primary Key )
Coluna ou combinação de colunas que identifica uma única linha em uma tabela e
com os quais as demais colunas mantêm uma relação de dependência
PK_<mnemônico tabela>
Sobre “mnemônico tabela” ver o item 5.4.5 Mnemônico de Tabela
As colunas pertencentes à chave primária não podem possuir valor nulo
Ex.: PK_EMPR
5.4.7.2
Chave Estrangeira ( Foreign Key )
Coluna ou combinação de colunas definida como chave estrangeira, que
estabelece relação com uma chave primária em outra ou na mesma tabela
FK_<mnemônico tabela pai>_<mnemônico tabela filho>_<texto significativo
opcional>
Sobre “mnemônico tabela” ver o item 5.4.5 Mnemônico de Tabela
O “texto significativo opcional” deve ser utilizado como diferenciador quando
houver mais de um relacionamento entre as duas tabelas.
As colunas pertencentes à chave primária não podem possuir valor nulo
Ex.: FK_USUA_PARE_RESPONSAVEL
5.4.7.3 Unique
Coluna ou combinação de colunas que identifica uma única linha em uma tabela.
Diferentemente da chave primária, estas colunas não possuem um relacionamento
de dependência
As colunas pertencentes à “constraint unique” podem possuir valor nulo
UN_<mnemônico da tabela>_<texto significativo>
Sobre “mnemônico tabela” ver o item 5.4.5 Mnemônico de Tabela
É preferível que o “texto significativo” contenha referência às colunas envolvidas
Ex: UN_EMPR_EMPR_NR_CGC
5.4.7.4 Check
Define valores válidos para uma ou mais colunas de uma tabela.
CK_<mnemônico tabela>_<texto significativo>
O nome significativo deve esclarecer o tipo de informação que a check constraint
está validando
Sobre “mnemônico tabela” ver o item 5.4.5 Mnemônico de Tabela
Ex: CK_EMPR_NR_HORAS
No anexo 3 encontram-se as variações para bancos multidimensionais usados na
TIC/ADS-TI
5.4.8 Default
Define um valor padrão a ser associado a determinadas colunas quando não são
estabelecidos valores para elas
Uma alternativa para definir um default é a utilização da cláusula DEFAULT no
momento em que se cria a tabela
DF_<texto significativo>
É preferível que o “texto_significativo” contenha referência às colunas envolvidas
Ex: DF_EMPR_DT_INCL
5.4.9 Índice
Estrutura associada a uma ou mais colunas com o objetivo de otimizar consultas
ou impor integridade. Ao ser definida a constraint primary key ou unique, o SGBD
cria automaticamente um índice único e utiliza o mesmo nome da constraint para
nomeá-lo
Índice constraint (chave primária, unique e foreing key)
O índice utiliza o mesmo nome da constraint.
Índice secundário
IN_<mnemônico tabela>_<texto significativo>
Sobre “mnemônico tabela” ver o item 5.4.5 Mnemônico de Tabela
É preferível que o “texto significativo” contenha referência às colunas
envolvidas
Ex.: IN_EMPR_CPF
5.4.10 User Data Type
Tipos de dados definidos pelo usuário
UDT_<texto significativo>
Ex.: UDT_EMPR_DATA
5.4.11 Sequence ( SGBD Oracle )
Objeto do banco de dados que gera números seqüenciais para utilização em
tabelas
SQ_<nome da coluna>
Ex.: SQ_STPR_CD_PROJ
5.4.12 Role
É um conjunto de permissões de acesso a objetos de um determinado Banco de
Dados. Deve ser nomeado em letras maiúsculas
R<texto significativo>
No anexo 1 encontram-se as variações para a TIC-E&P
No anexo 2 encontram-se as variações para a TIC-ADS-TI
5.4.13 Unidades de Programa
5.4.13.1 Gatilho ( Trigger )
É um procedimento disparado automaticamente após cada operação de insert,
update ou delete, específico para cada tipo de operação
TR<tipo>_<evento>_<mnemônico_tabela>_<função>_<sistema>, onde:
- Tipo pode ser:
G – Trigger de Integridade Referencial (tabela)
M – Trigger Mutante
V – Trigger de View
- Evento pode ser:
AS - After Statement
BS - Before Statement
AR - After Row
BR - Before Row
- Sobre “mnemônico tabela” ver o item 5.4.5 Mnemônico de Tabela
- Função pode ser:
INS
DEL
UPD
IUD
IU
ID
DU
- para trigger de inclusão
- para trigger de exclusão
- para trigger de update
- combinação que indica os eventos de Insert, Update e Delete
- combinação que indica os eventos de Insert e Update
- combinação que indica os eventos de Insert e Delete
- combinação que indica os eventos de Delete e Update
- Sistema é opcional
Ex.: TRG_AR_PESS_IU, TRG_AR_TERC_IU_OG33
5.4.13.2 Função ( Function )
É uma função armazenada dentro do próprio banco de dados, que é chamada por
meio de select e retorna um valor
UFC_<sistema>_<texto significativo>
Ex.: UFC_TC00_NIVEL_ACESSO
5.4.13.3 Procedimento Armazenado ( Stored Procedure )
É uma rotina armazenada dentro do próprio banco de dados. Alguns
procedimentos podem ser retirados da aplicação e transformados em stored
procedures. O grau de complexidade de uma stored procedure e a linguagem
utilizada em sua codificação dependem do SGBD utilizado
USP_<sistema>_<texto significativo>_<operação>
A operação executada pode ser:
UPD - procedimentos de UPDATE
INS - procedimentos de INSERT
DEL - procedimentos de DELETE
IUD - procedimentos INSERT, UPDATE e DELETE.
IU
- combinação que indica os eventos de Insert e Update
ID
- combinação que indica os eventos de Insert e Delete
DU - combinação que indica os eventos de Delete e Update
OBS: Quando for uma Stored Procedure somente de consulta, colocar como
padrão
USP_<sistema>_<texto significativo>
Não utilizar nada na parte de operação
Ex.: USP_TC00_LIBERA_RECURSO_IU
5.4.13.4 Package ( SGBD Oracle )
São definições de dados e stored procedures armazenadas dentro do próprio
banco de dados ORACLE
PCK_<sistema>_<texto significativo>
Ex.: PCK_TC00_CONTROLE_ACESSO
5.4.13.5 Synonyms
O nome do sinônimo é o nome do objeto ao qual ele faz referência
6. REGISTROS
Não se aplica
7. ANEXOS
Download