CREATE TABLE moedas (
    id           bigint NOT NULL,
    descricao    VARCHAR2(50) NOT NULL,
    sigla        VARCHAR2(5),
    sigla_iso    VARCHAR2(3) NOT NULL,
    codigo_iso   INTEGER,
    tipo         SMALLINT DEFAULT 1,
    corrente     SMALLINT DEFAULT 0 NOT NULL,
    cotacao      SMALLINT NOT NULL,
    codigo_bacen INTEGER NOT NULL
);

ALTER TABLE moedas
    ADD CHECK ( tipo IN ( 1, 2 ) );

ALTER TABLE moedas
    ADD CHECK ( corrente IN ( 0, 1 ) );

ALTER TABLE moedas
    ADD CHECK ( cotacao IN ( 1, 2 ) );

COMMENT ON COLUMN moedas.sigla_iso IS
    'Sigla iso da moeda 
';

COMMENT ON COLUMN moedas.codigo_iso IS
    'código iso da moeda';

COMMENT ON COLUMN moedas.tipo IS
    'Tipo de Moeda
1-Moeda
2-Índice';

COMMENT ON COLUMN moedas.corrente IS
    'Indica se a moeda é a corrente do pais 
0-Não
1-Sim';

COMMENT ON COLUMN moedas.cotacao IS
    'Cotação
1-Diária
2-Mensal';

COMMENT ON COLUMN moedas.codigo_bacen IS
    'código da moeda no BACEN';
CREATE UNIQUE INDEX moedas_idx_corrente ON moedas 
    ( 
     (corrente)
WHERE
    corrente = 1
    ) 
;