Padronização de dados

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
juliermecarvalho
Rank: Estagiário Júnior
Rank: Estagiário Júnior
Mensagens: 2
Registrado em: Ter, 21 Abr 2009 9:58 am
Localização: colatina-es
______________________
Julierme Carvalho de Oliveira

No firebird tem duas funcionalidades que eu gosto, e ajuda muito! Uma é domínio ou DOMAIN que é um tipo de dado criado, ou melhor, padronizado por mim e consequentemente padronizando o banco, a outra é valores em CHECK que são valores pré definidos por mim em alguns campos ex:

CREATE DOMAIN D_BAIRRO AS VARCHAR(50)
neste tipo de dados todos os campos d_bairro serão varchar(50) caso eu precise muda só muda no domínio ex: varchar(100) e todo os campos que usarem este dominio já estará atualizado.

CREATE DOMAIN D_N_OU_S AS VARCHAR(1) CHECK (VALUE IN ( 'S','N')) neste exemplo com check o domínio só aceitara os valores 'S','N' caso eu precisa altera para ‘F’,’T’ é só mudar o domínio e pronto, todos os campos que usarem o campo D_N_OU_S passará só a aceitar F e T;
joaogarcia
Rank: Analista Júnior
Rank: Analista Júnior
Mensagens: 91
Registrado em: Ter, 20 Mar 2007 7:19 pm
Localização: Campinas - SP
Contato:
Cordialmente,
João C. Garcia

Cara...

Pesquise sobre declaração de váriáveis.
Tem um esquema de declaração chamado SUBTYPE.

Na declaração você pode criar um subtipo de um tipo.
Por exemplo:

Selecionar tudo

DECLARE
  SUBTYPE v_padrão IS VARCHAR2(50);
  variavel v_padrão;
BEGIN
...
END;
Não é exatamente igual, mas talvez ajude.
dudu0566
Rank: Analista Júnior
Rank: Analista Júnior
Mensagens: 74
Registrado em: Seg, 06 Ago 2007 3:59 pm
Localização: Campinas - SP
Eduardo Gomes

Não sei se é isto que procura:

Selecionar tudo

CREATE TABLE NAME_TABLE
(NAME_FIELD VARCHAR2(1)
 CONSTRAINT NAME_CHECK CHECK (NAME_FIELD IN ('A','B')) 
)

ou

ALTER TABLE NAME_TABLE
ADD ( CONSTRAINT NAME_CHECK CHECK (NAME_FIELD IN ('A','B'))
    )
juliermecarvalho
Rank: Estagiário Júnior
Rank: Estagiário Júnior
Mensagens: 2
Registrado em: Ter, 21 Abr 2009 9:58 am
Localização: colatina-es
______________________
Julierme Carvalho de Oliveira

dudu0566

sobre CONSTRAINT CHECK era isso mesmo que eu queria.
muito obrigado!
Responder
  • Informação