[resolvido] Foreign key não funciona

2 respostas Resolvido
sql
W

Bom dia pessoal, estou fazendo um trabalho da faculdade onde tenho que criar um banco de dados de um sistema de postagens, daí eu precisei criar uma relação N:N para a tabela postagens com a tabela mídias, já que uma mídia pode ser usada em diversas postagens e uma postagem pode ter diversas mídias, dai criei o seguinte código:

create database if not exists sistema_posts;

use sistema_posts;

create table if not exists postagens(
	id_postagens int(11) not null primary key auto_increment,
        titulo_postagens varchar(100) not null,
        desc_postagens varchar(200),
        conteudo_postagens text not null,
        tags_postagens varchar(100),
        data_criacao_postagens date not null,
        data_modificacao_postagens date,
        total_visualizacao_postagens int(11) not null,
        ch_autor_postagens int(11),
        ativo_postagens int(11) not null
);

create table if not exists midias(
	id_midias int(11) not null primary key auto_increment,
        caminho_midia varchar(100) not null,
        caminho_thumb_midia varchar(100),
        desc_midia varchar(200),
        tags_midia varchar(100),
        ch_autor int(11),
        ativo_midias int(11),
        data_criacao date
);

create table if not exists postagens_midias (
      fk_postagens int(11) not null,
      fk_midias int(11) not null,
      constraint pk_posts_midia primary key (fk_postagens,fk_midias),
      constraint fk_publication foreign key(fk_postagens) references postagens(id_postagens),
      constraint fk_multimidia foreign key(fk_midias) references midias(id_midias)
  );

to fazendo usando o workbench dai quando executo o código da tudo certo sem nenhum erro, mas as FOREIGN KEY não estão listadas em lugar nenhum, ai aperto o CTRL+R para ter a visão dos diagramas e realmente não foram criadas as chaves estrangeiras, não sei onde tô errando

2 Respostas

D

Tenta com alter table

W
Solucao aceita

consegui quando alterei o engine para innoDB

Criado 2 de outubro de 2019
Ultima resposta 25 de out. de 2019
Respostas 2
Participantes 2