Caros,

Como sei que na lista tem um monte de DBA fera, venho como um simples
mortal programador tirar algumas dúvidas a respeito de modelagem.
Estava eu discutindo com outro programador aqui sobre qual a melhor de
fazer algumas tabelas, e surgiu as seguintes dúvidas
básicas:
1 - Em uma tabela notas com a seguinte estrutura simplificada

NUMERO           int
BASEICM              numeric(18,2)
VALORICM            numeric(18,2)
BASEST                 numeric(18,2)
VALORST              numeric(18,2)
BASEPIS               numeric(18,2)
VALORPIS             numeric(18,2)
BASECOFINS       numeric(18,2)
VALORCOFINS     numeric(18,2)

Considerando que algumas vezes alguns destes valores (BASE e VALOR) seriam
zerados, o ideal seria deixar gravar 0 na tabela principal, ou quebrar em
várias para economizar espaço, como segue abaixo.
   NOTAS
   NUMERO            int

   NOTASICM
   NUMERO               int
   BASEICM
   VALOR ICM

   NOTASST
   NUMERO
   BASEST
   VALORST

etc...

Inclusive ficou a dúvida de como o governo trata isto por exemplo, já que
trabalham com bilhões de registro e hoje estão economizando os zeros a
esquerda da IE na NFE, será que quebram estas tabelas para economizar
espaço, ou deixam junto para economizar processamento ? ou estou errado de
achar que economizaria processamento quebrando as tabelas (rsrsrsrs) ?


2 - Outra dúvida, considerando que tenho uma tabela onde a chave natural é
composta, ex Notas, chave=PESSOA+NUMERO+SERIE+MODELO, o ideal para o
relacionamento com as tabelas filhas (itensmovimento, duplicatas) seria
criar um serial (notas_id) ou gravar a chave composta em cada tabela filha ?

Por enquanto é isto.

Desde já agradeço a atenção recebida.


Marco Aurélio Ventura da Silva
[email protected]
Prodata Informática e Cadastro LTDA
(33)3322-4444
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a