check constraints?
pessoal, não entendi muito bem a usabilidade desse comando, alguem poderia me explicar de forma clara...
obrigada
obrigada
Mariana Carvalho
Curtidas 0
Respostas
Robson Alves
25/10/2012
pessoal, não entendi muito bem a usabilidade desse comando, alguem poderia me explicar de forma clara...
obrigada
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. --
GOSTEI 0
Mariana Carvalho
25/10/2012
então seria melhor que essa opção fique na parte de desenvolvimento?
GOSTEI 0
Robson Alves
25/10/2012
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.
GOSTEI 0
Tiago
25/10/2012
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.
GOSTEI 0
Alex Lekao
25/10/2012
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
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
GOSTEI 0
Mariana Carvalho
25/10/2012
creio que certas coisas ficariam bem melhores no banco...
evitando assim problemas...
evitando assim problemas...
GOSTEI 0
Mariana Carvalho
25/10/2012
neste caso...é melhor ou não implementar???
GOSTEI 0