Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Version History

« Previous Version 8 Next »

Coordenador

DANIEL MORO

Participantes

GABRIEL DA CRUZ OLIVEIRA

Data

Status

PLANEJAMENTO

Nesta página

 🏃Objetivo

Este documento tem como objetivo estabelecer diretrizes claras para padronização de nomenclatura, tipos de dados, objetos, procedimentos armazenados e acessos ao banco de dados. A padronização facilitará a manutenção, auditoria e segurança do banco de dados, além de promover consistência na implementação dos sistemas. A padronização é aplicada tanto ao nível lógico quanto físico, garantindo uniformidade entre a modelagem de dados e a implementação no SQL Server.

📋 Regras gerais para todos os objetos

  • Limite de caracteres: 128 caracteres, conforme especificação do SQL Server.

  • Escrita: Todos os nomes devem ser compostos por letras minúsculas, e a segunda palavra começando com letra Maiúscula, exemplo, 'nomeUsuario'. Isso garante legibilidade e independência de autor.

  • Caracteres permitidos: Apenas caracteres alfabéticos (letras) são permitidos, sem acentuação, sem números, espaços ou caracteres especiais.

  • Prefixos: Quando necessários, os prefixos (como sigla do sistema) devem ser separados por underscore.

  • Máximo de cinco palavras para definir o nome do objeto, além dos prefixos.

🧩 Nome dos objetos no Banco de Dados

Sistemas

  • Sigla: O sistema será identificado por uma sigla de no mínimo duas e no máximo três letras, representando as palavras mais significativas para o sistema. A palavra "sistema" não será utilizada.

    • Exemplos:

      • ACP - Sistema de Auditoria de Contas Públicas

      • CA - Sistema de Contas Anuais

      • LRF - Sistema de Lei de Responsabilidade Fiscal

Banco de Dados

  • O nome do banco de dados será a sigla do sistema que contém a maior parte de suas tabelas.

    • Exemplos:

      • ACP, CA, LRF.

🗂 Tipo de objetos

As abreviações para os tipos de objetos são as seguintes:

Objeto

Abreviação

Stored Procedures

PR

Views

VW

Trigger

TR

Funções

FN

User Data Types

UD

Default

DF

Constraint Check

CK

Constraint Foreign Key

FK

Constraint Unique Key

UK

Constraint Primary Key

PK

🗒️  Entidades / Tabelas

  • Os nomes das entidades e tabelas devem ser escritos no singular, refletindo a funcionalidade da tabela.

  • A abreviação do sistema será precedida ao nome da tabela.

  • Não deve ser incluída a abreviação do tipo de objeto.

  • Exceção: Tabelas compartilhadas entre sistemas terão o prefixo do sistema que mantém os dados. Tabelas gerais terão a abreviação "TAB".

    • Exemplos:

      • ACP_cliente (tabela de clientes do sistema ACP)

      • TAB_tipoUnidade (tabela geral de tipo de unidade);

📑 Atributos / Campos

  • Os nomes dos atributos devem ser compostos no singular, utilizando letras minúsculas, e as palavras devem ser separadas por underscores.

  • Os nomes dos atributos não podem conter o nome da entidade ou tabela.

  • A classe do atributo será representada por abreviações conforme a tabela abaixo.

Classe

Descrição

Exemplo

Código

Valor numérico autoincremento

Identificador

Data

Data (dia, mês, ano).

dataFuncionamento

Descrição

Texto livre representando uma descrição.

observacoesDetalhes

Hora

Hora, minuto e segundo.

horaInicio

Indicador

Flag ou status binário (SIM ou NÃO).

IndicativoOutrasOpcoes

Nome

Texto alfanumérico para nomes.

nomeUnidade

Número

Valor numérico identificador.

numeroProcesso

Quantidade

Quantidade de algo.

quantidadeEntrada

Sigla

Sigla ou abreviação.

sgUnidade

Valor

Valor numérico geral.

valorPreco

📈 Stored Procedures

  • Os nomes das stored procedures devem seguir este formato:

    • Prefixo do sistema + Tipo de objeto (PR) + Entidade/tabela + Operação a ser realizada.

    • Exemplo: ACP_PR_CLIENTE_INCLUI, LRF_PR_DEMONSTRATIVO_municipioAtualiza

  • As stored procedures de administração do banco terão o prefixo ADM.

    • Exemplo: ADM_PR_tecnicoInclui

Observação: Deve-se procurar criar Stored Procedures pequenas, com poucas funcionalidades, de modo a eliminar situações como executar comandos variados de acordo com o valor de um parâmetro de entrada.

📊 Triggers

  • O nome das triggers deve seguir o formato:

    • Prefixo do sistema + Tipo de objeto (TR) + Entidade/tabela associada + Operação realizada.

    • Exemplo: ACP_TR_INTERESSADO_NOVO_DELETE, ACP_TR_sessaoUpdate

📐 Funções

  • Os nomes das funções devem ser compostos da seguinte maneira:

    • Prefixo do sistema + Tipo de objeto (FN) + Funcionalidade da função.

    • Exemplo: ACP_FN_calculaCPF

📌 Constraints

  • Default
    O nome da constraint será composto por:

  1. Abreviação do tipo (DF) + Prefixo do sistema + Definição da constraint.

  2. Exemplo: DF_ACP_SIM

🖊️ Check

  • A constraint Check será nomeada conforme:

  1. Abreviação do tipo (CK) + Nome do atributo.

  2. Exemplo: CK_tipoCargo

🔑 Primary Key

  • A constraint Primary Key será nomeada conforme:

  1. Prefixo PK + Nome da tabela + Coluna da chave primária.

  2. Exemplo: PK_ACP_CARGO_tipoCargo

🗝️ Foreign Key

  • A constraint Foreign Key será nomeada conforme:

  1. Prefixo FK + Nome da tabela filha + Nome da tabela pai + Coluna de referência.

  2. Exemplo: FK_ACP_CARGO_ACP_RESPONSAVEL_tp_cargo

📒  Tipo de Dados Utilizados no SQL Server

O TCSC utiliza os seguintes tipos de dados no SQL Server para garantir consistência e precisão nas tabelas:

Tipo de Dados

SQL Server

Numérico

Tinyint, Int, Smallint, Bigint

Texto

Varchar(n)

Data

Date, Datetime

Binário

BIT (0, 1, NULL)

Valor Monetário

Decimal(n,m)

Caractere

Char(1)

📗  Auditoria e Segurança

As tabelas de auditoria devem seguir o padrão de colunas como:

  • tipoOperacao (Tipo da operação realizada)

  • dataOcorrencia (Data e hora da operação)

  • numeroMatricula_aud (Identificador do auditor ou responsável pela operação)

Exemplo de tabela de auditoria:

Create table dbo.Auditoria (

  tipoOperacao varchar(10),
  dataOcorrencia datetime,
  numeroMatricula_aud sysname not null
)


  • No labels