edymrex 0 Denunciar post Postado Janeiro 17, 2007 Estou começando meus estudos com mysql, e estou com dúvidas de como fazer minha chave estrangeira por exemplo eu crei a tabela authors.create table authors(authorID int auto_increment primary key not null, firstName varchar(40),latName varchar(40))Bem eu sei que para criar um chave estrangeira eu tenho que relacionar a tabela com a chave primaria de outra tabela no caso se eu quizercriar uma chave estrangeira para a tabela isbn seria dessa forma ??create table isbn(authorID int auto_increment primary key not null, isbn char(4)) assim que é feita a chave estrangeira..?? Compartilhar este post Link para o post Compartilhar em outros sites
cassitos 2 Denunciar post Postado Janeiro 17, 2007 Oi, dá uma lida neste post sobre integridade referencial tem exemplo sobre chave estrangeira. Se ainda estiver com dúvidas após ler a matéria posta ae. Compartilhar este post Link para o post Compartilhar em outros sites
edymrex 0 Denunciar post Postado Janeiro 17, 2007 Cara não tenho certeza se entendi corretamenteCREATE TABLE aluno (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,nome CHAR(30) NOT NULL) TYPE=InnoDB;CREATE TABLE cursos (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,nome CHAR(30) NOT NULL) TYPE=InnoDB;CREATE TABLE notas (aluno_id INT NOT NULL,cursos_id INT NOT NULL,date DATE NOT NULL,nota DOUBLE NOT NULL,PRIMARY KEY(aluno_id, cursos_id, date),INDEX i2 (cursos_id),FOREIGN KEY (aluno_id) REFERENCES aluno(id) ON DELETE CASCADE,FOREIGN KEY (cursos_id) REFERENCES cursos(id) ON DELETE RESTRICT) TYPE=InnoDB;bem o que eu entendi para que haja uma relação entre as tabelas deve haver uma escecificação TYPE=InnDB nas qual é a função disso o que eu entedi serve somente para criar uma relação entre as tabelas e implementa as relações de integridade.As relações são CASCADE, RESTRICT, SET NULL e SET DEFAULT mas tem k usar essa relações para criar a chave estrangeira..?? Compartilhar este post Link para o post Compartilhar em outros sites
walace 1 Denunciar post Postado Janeiro 17, 2007 Não necessariamente, você pode criar a chave simplesmente declarando assim: FOREIGN KEY (aluno_id) REFERENCES aluno(id) Isso fará com que você precise ter um aluno válido na tabela notas. Leia este tópico: http://forum.imasters.com.br/index.php?showtopic=100466 Mais: http://pt.wikipedia.org/wiki/Modelo_relacional Compartilhar este post Link para o post Compartilhar em outros sites