Buscar

EXTRA. Chave Estrangeira no MYSQL

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Criando uma chave estrangeira no Mysql
Ricardo Esteves Kneipp (kneipp@faminas.edu.br) é professor da Faculdade de Minas Gerais (FAMINAS) e da Universidedde Iguaçu (UNIG). Graduado em Ciências da Computação (UCP), Pós-graduado em Informática na Educação (UFLA), Pós-graduado em Gestão
  
Este artigo tem como objetivo apresentar de forma prática a implementação de chave estrangeira no MYSQL a partir do uso de tabelas do tipo InnoDB. 
O MySQL, a partir da versão 3.23.43b, passa a incorporar o recurso de criação e manutenção de tabelas do tipo InnoDB. Tabelas do tipo InnoDB suportam restrições por chave estrangeira e o uso de stored procedures. Assim, se você quer modelar/desenvolver bancos implementando o recurso de chaves estrangeiras, suas tabelas terão que ser do tipo InnoDB.
 
Criando tabelas
Para criar tabelas no tipo InnoDB, você deverá incluir no final da tabela a seguinte sintaxe:  ENGINE = innodb;
Veja exemplos de criação de tabelas.
Listagem 1. Exemplo de criação de tabelas.
CREATE TABLE `cidades` ( 
`codcidade` INT PRIMARY KEY ,
`descricao` VARCHAR( 50 ) NOT NULL 
) ENGINE = innodb;
CREATE TABLE `clientes` ( 
`codcliente` INT PRIMARY KEY ,
`nome` VARCHAR( 50 ) NOT NULL, 
‘codcidade’ INT
) ENGINE = innodb;
CREATE TABLE `vendedores` ( 
`codvendedor` INT PRIMARY KEY ,
`nome` VARCHAR( 50 ) NOT NULL 
) ENGINE = innodb;
CREATE TABLE `vendas` ( 
`codvenda` INT PRIMARY KEY ,
`datavenda` DATE NOT NULL 
`codcliente` INT,
`codvendedor` INT 
) ENGINE = innodb;
Após criar as tabelas, você fará uma alteração na estrutura de cada tabela que necessita utilizar a chave estrangeira. Essa alteração da estrutura da tabela é feita a partir do comando alter table.
 
Veja alguns exemplos:
 
Listagem 2. Alterando a estrutura das tabelas.
 
ALTER TABLE `clientes` ADD CONSTRAINT `fk_cidade` FOREIGN KEY ( `codcidade` ) REFERENCES `cidade` ( `codcidade` ) ;
 
ALTER TABLE `vendas` ADD CONSTRAINT `fk_vendas_codcliente` FOREIGN KEY ( `codcliente` ) REFERENCES `clientes` ( ` codcliente ` ) ;
ALTER TABLE `vendas` ADD CONSTRAINT `fk_vendas_codvendedor` FOREIGN KEY ( `codvendedor` ) REFERENCES `vendedores` ( ` codvendedor ` ) ;
            
Após criar as chaves estrangeiras vamos verificar a estrutura das tabelas utilizando o comando DESC. Digite DESC vendas para visualizar a estrutura da tabela vendas.
 
 
Figura 1. Apresentação da estrutura da tabela vendas
Conclusões
Neste artigo foram apresentados exemplos práticos da criação de chaves estrangeiras a partir do uso de de tabelas do tipo InnoDB.
Leia mais em: Criando uma chave estrangeira no Mysql http://www.devmedia.com.br/criando-uma-chave-estrangeira-no-mysql/20299#ixzz26N7F5xbt
VENDEDOR 1--------------* VENDAS * ----------------------1CLIENTES *--------------------------1CIDADE

Outros materiais