Jump to content


Photo

Problema No Foreign Key


  • Faça o login para participar
1 reply to this topic

#1 perera

perera

    Normal

  • Usuários
  • 71 posts
  • Sexo:Não informado

Posted 05/07/2012, 02:57

Eu criei o seguinte banco de dados, que seria um Quiz.
Fiz duas tabelas, uma para perguntas e outras para respostas.

Fiz uma FOREIGN KEY para que eu consiga relacionar as respostas com a pergunta.
Entretando ocorre um erro na criação da tabela respostas na parte do FK

Error Code : 1005
Can't create table 'quiz.quiz_respostas' (errno: 150)


Mas eu não consigo ver o erro.
Alguém pode me ajudar?

Segue abaixo o banco:

CREATE DATABASE quiz; 
USE quiz;

CREATE TABLE quiz_perguntas (
per_id INT UNSIGNED AUTO_INCREMENT,
per_pergunta TEXT NOT NULL,
per_materia INT NOT NULL,
per_usuario INT NOT NULL,
CONSTRAINT pk_per PRIMARY KEY (per_id)
); 

CREATE TABLE quiz_respostas (
res_id INT UNSIGNED AUTO_INCREMENT,
res_resposta TEXT NOT NULL,
res_pergunta INT NOT NULL,
res_correta INT NOT NULL DEFAULT '0',
CONSTRAINT pk_res PRIMARY KEY (res_id),
CONSTRAINT fk_res FOREIGN KEY (res_pergunta) REFERENCES quiz_perguntas (per_id)
);


#2 dery

dery

    Novato no fórum

  • Usuários
  • 23 posts
  • Sexo:Masculino
  • Localidade:Sumaré-/sp

Posted 05/07/2012, 15:42

Eu criei o seguinte banco de dados, que seria um Quiz.
Fiz duas tabelas, uma para perguntas e outras para respostas.

Fiz uma FOREIGN KEY para que eu consiga relacionar as respostas com a pergunta.
Entretando ocorre um erro na criação da tabela respostas na parte do FK

Error Code : 1005
Can't create table 'quiz.quiz_respostas' (errno: 150)


Mas eu não consigo ver o erro.
Alguém pode me ajudar?

Segue abaixo o banco:

CREATE DATABASE quiz; 
USE quiz;

CREATE TABLE quiz_perguntas (
per_id INT UNSIGNED AUTO_INCREMENT,
per_pergunta TEXT NOT NULL,
per_materia INT NOT NULL,
per_usuario INT NOT NULL,
CONSTRAINT pk_per PRIMARY KEY (per_id)
); 

CREATE TABLE quiz_respostas (
res_id INT UNSIGNED AUTO_INCREMENT,
res_resposta TEXT NOT NULL,
res_pergunta INT NOT NULL,
res_correta INT NOT NULL DEFAULT '0',
CONSTRAINT pk_res PRIMARY KEY (res_id),
CONSTRAINT fk_res FOREIGN KEY (res_pergunta) REFERENCES quiz_perguntas (per_id)
);


O erro pode estar nesta linha,
res_correta INT NOT NULL DEFAULT '0',
troque por
res_correta INT NOT NULL DEFAULT 0,

Edição feita por: dery, 05/07/2012, 15:43.





1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq