CriandoBits
Identifique-se Entrar Esqueceu a senha? Esqueci minha senha

MySQL - Criando integridade referencial entre tabelas

Por Benedito Silva Júnior - publicado em 26/07/2016


Num banco de dados relacional, quando um registro aponta para o outro, dependente deste, há de se fazer regras para que o registro "pai" não possa ser excluído se ele tiver "filhos" (as suas dependências). O relacionamento é feito através das chaves estrangeiras das tabelas, avaliadas antes da execução do comando de delete, insert ou update.

Para criar a integridade referencial em uma base de dados MySQL usando o MySQL-Query Browser, siga os seguintes passos:

1. Use o MySQL-Front para verificar o tipo do banco de dados usado. Para isso, use o comando "SHOW TABLE STATUS";

Se o tipo do banco de dados não for "InnoDB" o converta para esse formato. Para isso selecione o banco e, na aba "SQL Editor", digite o comando "ALTER TABLE <nome da tabela> ENGINE =InnoDB";

2. Após isso, exclua os registros das tabelas usando o comando "TRUNCATE TABLE <nome da tabela>";

3. Baixe o programa "MySQL Query Browser" no site http://downloads.mysql.com/archives/query/ para melhor manipular as tabelas e criar as chaves estrangeiras;

4. Com o MySQL Query Browser aberto, selecione o banco e, com o botão direito do mouse, clique encima da tabela e selecione "Edit Table";

5. Na aba "Column Name", selecione a aba "Foreign Keys" e clique no botão "+". Nomeie o foreign key, depois em "On Delete" deixe selecionado "Cascade". Essa opção fará com que os registros relacionados sejam excluídos automaticamente. Em "Ref. Table" selecione a tabela pai que se relacionará com a tabela filha e, a partir disso, qualquer registro da tabela pai que for excluído e que tiver algum dado relacionado com a tabela filha repercutirá nesta tabela.

A videoaula abaixo mostra, com detalhes, como fazer as configurações descritas acima:



 
VoltarTopo