check constraints?

25/10/2012

0

pessoal, não entendi muito bem a usabilidade desse comando, alguem poderia me explicar de forma clara...

obrigada
Mariana Carvalho

Mariana Carvalho

Responder

Posts

26/10/2012

Robson Alves

pessoal, não entendi muito bem a usabilidade desse comando, alguem poderia me explicar de forma clara...

obrigada


O Check é uma regra que roda em tempo de execução e ele válida a condição que foi imposta.
Por exemplo um campo de Valores monetários, não pode possuir valores que ultrapassem a casa do trilhão então crio um Check que inválida qualquer valor acima de trilhão e não inclui a informação, não sei te afirmar se ele informa um erro, se ele ignora a linha inteira ou se ele ignora a coluna com o check.



-- A minha visão (desenvolvedor) esse tipo de regra direto na tabela e armazenado no banco de dados é uma forma 'legal' e uma possibilidade de realizar um trabalho, entretanto isso deve ser controlado pela aplicação, o banco de dados relacional deve cuidar do relacionamento, a regra de negócio deve estar em outro lugar. --
Responder

26/10/2012

Mariana Carvalho

então seria melhor que essa opção fique na parte de desenvolvimento?
Responder

26/10/2012

Robson Alves

então seria melhor que essa opção fique na parte de desenvolvimento?


Minha opinião é suspeita, pois sou desenvolvedor... mas pelas vias da facilidade, é mais rápido e simples encontrar regras direto na aplicação, o banco de dados tem a opção de resolver o problema, mas ele não foi todo feito para isso.

Responder

26/10/2012

Tiago

Concordo que deve ser no desenvolvimento, afinal de contas é uma regra de negócio.... e regras de negócio devem estar as claras para os desenvolvedores.. No entanto se for um projeto pequeno, isso pode ser útil e economizará alguns "ifs" na aplicação.
Responder

26/10/2012

Alex Lekao

Ola Bom dia!!!

Interessante a Discusao que acabou virando.

Gostaria de deixar o meu ponto de vista com relacao a regra de negocio estar no banco ou na aplicacao.

Particularmente acho melhor que as regras nao fique na aplicacao, haja vista pode haver mudanca na regra e necessariamente nao haveria mudanca na aplicacao, desta forma nao haveria necessidade de se alterar o codigo fonte de software, poupando o trabalho e os "ifs" no casos... rsrsr

Acho interessante que as regras facam parte de procedures que normalmente serao executadas mais rapidamente em alguns casos e a aplicacao passara os parametros apenas, so havera necessidade de se alterar o codigo fonte da aplicacao quando houver alteracao que envolvam parametros a mais.

No caso do check acredito que possa ser agregado o retorno de erro para ser tratado pela aplicacao para dar algum tipo de informacao ao usuario/operador, apesar de eu nao conhecer muito bem esse funcionamento.

e o check tambem podera ser utilizado em conjunto com um valor padrao para o campo, se nao me engano nos exemplos de explicacao do SQL no Books On-line ele exemplifica desta forma.

Mas acho que a discursao interessante e vale a pena ser tratada, definida e alinhada com os desenvedores, de aplicacao e banco de dados.

Eh isso ai...

Espero ter contribuido. rsrsr

Abraco a todos.

Alex - Lekao
Responder

26/10/2012

Mariana Carvalho

creio que certas coisas ficariam bem melhores no banco...
evitando assim problemas...
Responder

29/10/2012

Mariana Carvalho

neste caso...é melhor ou não implementar???
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar