Posted April 29, 2020 Não entendi direito isso na prática, na análise eu tinha definido q se modificasse um campo modificasse nas tabelas filhas mas se fosse deleção proibisse, acredito q isso no PostgreSQL seria CASCADE e RESTRICT respectivamente, procede? Agora qdo importei a análise para o PostgreSQL não veio essas informações onde tive q recriar manualmente. Então minhas dúvidas são: Como seria um exemplo prático de CASCADE x RESTRICT x NO ACTION x DEFAULT Se não adianta mesmo mexer isso na análise pq não atualiza o banco, tendo q fazer tudo no banco somente. Em caso de se utilizar CASCADE e RESTRICT como fica no dia a dia para remover algum registro em caso de restrição? 1 person likes this Share this post Link to post Share on other sites
Posted April 29, 2020 Toda a parte de relacionamento entre as tabelas eu gerencio direto no Postgresql não levo nenhuma informação para a Análise do Windev Como seria um exemplo prático de CASCADE x RESTRICT x NO ACTION x DEFAULT R= exemplo de cacade: você tem uma tabela de pedidos e pedidos_itens, ao deletar um registro da tabela pedido, todos os registros da tabela pedidos_itens também serão excluídos R= exemplo de restrict: se você tentar deletar um registro da tabela pedidos que ainda tenha registros vinculados na tabela pedidos_itens, o banco de dados não irá permitir o delete R=exemplo de NO ACTION: você deleta um registro na tabela pedidos e o banco não valida se tem registro na tabela pedidos_itens R=exemplo de DEFAULT: digamos que você tenha uma tabela de clientes, e exista um campo clie_vendedor que esta relacionado a tabela vendedores, se você excluir um registro na tabela vendedores, e o DEFALT do relacionamento for NULL, e este tiver algum cliente vinculado a ele, o banco irá atualizar o campo clie_vendedor de todos os clientes vinculados para NULL Se não adianta mesmo mexer isso na análise pq não atualiza o banco, tendo q fazer tudo no banco somente. R= como eu disse, eu faço tudo no banco e depois atualizo a Analise Em caso de se utilizar CASCADE e RESTRICT como fica no dia a dia para remover algum registro em caso de restrição? R=usando o mesmo exemplo das tabelas pedidos e pedidos_itens, digamos que vc deixou marcado como restrict, para deletar um pedido, você será obrigado a antes deletar os registros da tabela pedidos_itens e depois estará liberado para deletar o registro da tabela pedidos Evandro Andersen HDTec Software 2 people like this Share this post Link to post Share on other sites
Posted April 29, 2020 Top @Evandro Andersen entendi perfeitamente, agora ficou bem claro obrigado mesmo. Share this post Link to post Share on other sites