locked
Visual Studio 2013 - FK ON DELETE RESTRICT RRS feed

  • Pergunta

  • OPA!

    Estou tentando criar uma CONSTRAINT onde não seja permitido excluir um registro PAI, se existir registro FILHO, ou seja, quero que seja lançada uma exceção caso o usuário tente excluir um GRUPO_DE_ITEM que possui um ITEM relacionado a ele.

    Na 'unha', via SQL, acredito que ficaria assim:

    ALTER TABLE tabItem
    ADD CONSTRAINT FK_idGrupo
    FOREIGN KEY (idGrupo)
    REFERENCES tabGrupoDeItem (idGrupo) ON DELETE RESTRICT;

    Ocorre que quero criar essas CONSTRAINTs pela interface do Visual Studio, e não estou conseguindo, porque não existe a opção RESTRICT no ON DELETE. (veja imagem abaixo)

    Alguém sabe como fazer isso via DATASET do VS 2013?

    sexta-feira, 31 de julho de 2015 02:13

Respostas

  • Bom dia, Vinicius. Não há uma função na interface que faça isso diretamente da maneira como você precisa.

    How to: Create Unique Constraints

    Create Unique Constraints

    Atenciosamente


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    • Sugerido como Resposta Marcos SJ segunda-feira, 3 de agosto de 2015 12:58
    • Marcado como Resposta Marcos SJ terça-feira, 11 de agosto de 2015 19:38
    segunda-feira, 3 de agosto de 2015 12:45

Todas as Respostas

  • Bom dia Vinicius,

    Tudo bem?

    De fato para fazer isso que você quer fazer você vai precisar fazer através de código para restringir a deleção. Peço que verifique esta documentação que fala sobre Datasets. Você já experimentou testar este código que você criou?

    Atenciosamente


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    sexta-feira, 31 de julho de 2015 12:34
  • Marcos,

    O código que criei funciona, desde que o ENGINE do banco mySql seja InnoDB.

    O que eu quero saber é: Como criar essas constraints no banco, via interface do VS, sem ter que digitar o código.

    O banco parece uma 'teia de aranha' de relacionamentos; fazer via código demoraria muito.

    Outro detalhe, é que o DataSet não consegue exibir os relacionamentos do banco. Ele simplesmente ignora.


    sábado, 1 de agosto de 2015 01:02
  • Bom dia, Vinicius. Não há uma função na interface que faça isso diretamente da maneira como você precisa.

    How to: Create Unique Constraints

    Create Unique Constraints

    Atenciosamente


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    • Sugerido como Resposta Marcos SJ segunda-feira, 3 de agosto de 2015 12:58
    • Marcado como Resposta Marcos SJ terça-feira, 11 de agosto de 2015 19:38
    segunda-feira, 3 de agosto de 2015 12:45
  • Boa tarde,

    Por falta de retorno do usuário, esta thread será encerrada.

    Caso seja necessário, por gentileza, abra uma thread nova.

    Atenciosamente


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    terça-feira, 11 de agosto de 2015 19:39