none
Configurar Padrão de Informação de uma Coluna RRS feed

  • Pergunta

  • Eu utilizo Firebird e agora aprendendo Firebird..

    Tenho um recurso no Firebird onde Crio um Tipo de Informação Padrão   DOMAIN

    Ex. Vamos dizer que quero criar um campo de valor do tipo Decimal(10,2), então crio la um Domain com o nome de Valor Decimal(10,2)

    Quando crio as tabelas com campo Valor    coloco que vai utilizar o DOMAIN Valor   e faço isso em todas as minhas tabelas

    Caso aconteça eu ter que alterar o configuração do Campo valor no Banco de Dados todo..  Altero o DOMAIN Valor para Decimal(10,4) e ele altera todas as  Colunas que utilizam esse Domain, muito mais pratico para fazer esse tipo de manutençao

    Tem algo assim no MSSQL ??

    Espero ter conseguido explicar a situação...


    terça-feira, 20 de outubro de 2015 13:22

Respostas

  • Gustavo,

    Você pode executar, por exemplo, um

    create type meuTipo from varchar(11) not null

    Porém, a manutenção dele é bem diferente do Firebird, pois não existe um ALTER TYPE... você precisa fazer um DROP e recriar com o tipo desejado.

    Mais um porém: se você já está usando ele em alguma tabela, antes do DROP você precisa mudar as colunas que fazem uso do tipo criado para o seu tipo base (varchar(11), no caso), fazer o drop, recriar o type fazer alter das colunas para tipo novamente.

    A tua lógica faz todo o sentido... E eu não conheço o Firebird, mas me pergunto como ele gerencia a questão do tipo ser um varchar e você resolver mudar int... O que deve ocorrer com as colunas que possuem caracteres alfa-numéricos. :-)

    Espero ter ajudado.

    []'s!


    /* Logan Destefani Merazzi - DBA | @LoganMerazzi | http://www.merazzi.eti.br
    Se a resposta for útil, vote nela. Se resolveu, marque-a como resposta. */

    terça-feira, 20 de outubro de 2015 13:54

Todas as Respostas

  • Gustavo,

    Você pode executar, por exemplo, um

    create type meuTipo from varchar(11) not null

    Porém, a manutenção dele é bem diferente do Firebird, pois não existe um ALTER TYPE... você precisa fazer um DROP e recriar com o tipo desejado.

    Mais um porém: se você já está usando ele em alguma tabela, antes do DROP você precisa mudar as colunas que fazem uso do tipo criado para o seu tipo base (varchar(11), no caso), fazer o drop, recriar o type fazer alter das colunas para tipo novamente.

    A tua lógica faz todo o sentido... E eu não conheço o Firebird, mas me pergunto como ele gerencia a questão do tipo ser um varchar e você resolver mudar int... O que deve ocorrer com as colunas que possuem caracteres alfa-numéricos. :-)

    Espero ter ajudado.

    []'s!


    /* Logan Destefani Merazzi - DBA | @LoganMerazzi | http://www.merazzi.eti.br
    Se a resposta for útil, vote nela. Se resolveu, marque-a como resposta. */

    terça-feira, 20 de outubro de 2015 13:54
  • Ola Logan

    Vou testar o que você me explicou, obrigado por enquanto

    E respondendo sua pergunta  você esta certo..   eu nunca mudaria INT para VARCHAR rsrsrs   seria para mudanças do mesmo tipo    como aconteceu uma vez comigo...   exemplo...   Nome da Mercadoria era varchar(60) e alterarei para varchar(80)  assim funciona perfeitamente...  so tive problemas com algumas views onde tive que recria-las..  dava uns probleminhas "estranhos" rsrsr     mais sempre uso para alterações de mesmo tipo de campo.. e é bom para padronizar..


    terça-feira, 20 de outubro de 2015 14:01