나는 3 개 테이블 외래 키는 내가, 학생 이름이 주어 졌을 때 이렇게 설정하는 것이 학생의 모든 대출을 검색하고 책의 내용을기본 키와 외래 키
답변
는 다음과 같은 모호한 요구 사항을 시작합니다. 많은 1 만 학생들 <-> 책 많은입니다 그래서이 키
하지 표시해야 할
Student Loan Book
- StudentID LoanID BookID
이 네가 어떤 칼럼을 가지고 있는지, 학생 표에 studentId가 있다고 가정하면, 다른 두 테이블에서 Student와 foriegn에서 기본에 가장 적합한 후보가 될 것이다.
CREATE TABLE dbo.Students
(
StudentID INT PRIMARY KEY
-- , other columns about students
);
CREATE TABLE dbo.Loans
(
LoanID INT PRIMARY KEY,
StudentID INT NOT NULL FOREIGN KEY REFERENCES dbo.Students(StudentID)
-- , other columns about loans
);
CREATE TABLE dbo.Books
(
BookID INT PRIMARY KEY,
-- , other columns about books
);
CREATE TABLE dbo.StudentBooks
(
StudentID INT NOT NULL FOREIGN KEY REFERENCES dbo.Students(StudentID),
BookID INT NOT NULL FOREIGN KEY REFERENCES dbo.Books(BookID)
);
당신이 학생을 기준으로 검색 할 때문에 ... 다른 테이블 모두에서 외래 키로 studentid를 사용해야합니다 :
Student
--------
Studentid -PK
Loan
---------
Loanid - PK
Studentid -FK
Book
-------
Bookid -PK
Loanid -FK
왜 도서가 대출과 관련이 있습니까? –
학생이 대출을받습니다. 대출에는 1 대 다수 도서가 포함될 수 있습니다. 이것은 제 의견으로는 유효한 모델입니다. – nolt2232
흥미 롭습니다 ... 나는 대출 담당관이 책을 구입했는지 알고 싶어하는 경우에 대해 들어 본 적이 있는지 알지 못합니다. –
- 1. 출력에 기본 키와 외래 키
- 2. 복합 키와 외래 키
- 3. 에 대한 기본 키와 외래 키
- 4. 여러 테이블에서 기본 키와 외래 키 업데이트
- 5. 하나의 외래 키와 두 개의 기본 키
- 6. 외래 키와 복합 키?
- 7. 복합 키와 자동 증가의 외래 키
- 8. ScalaQuery 다중 기본 키 및 외래 키
- 9. 외래 키 기본 키와 연결된 번호 만 표시
- 10. 여러 개의 기본/외래 키
- 11. 외래 키 복합 기본 키
- 12. SQL Server 기본/외래 키
- 13. 기본 키 변경 외래 키 변경
- 14. SQL은 기본 키와 외래 키를 동시에 업데이트합니다.
- 15. cakephp의 외래 키와 기본 키가 연관된 모델?
- 16. 데이터베이스 디자인 - 외래 키가 기본 키와 동일합니까?
- 17. RoR : 기본 외래 키 질문
- 18. 교리의 기본/외래 키 관계
- 19. 기본 키 대신 외래 키 두 개
- 20. Oracle 복합 기본 키/외래 키 질문
- 21. 외래 키 및 기본 키 오류
- 22. SQL Server의 복합 테이블, 기본 키, 외래 키 및 인덱싱
- 23. MySQL 외래 외래 키
- 24. DJANGO 외래 키와 집계
- 25. SQL Server보기에 기본 키와 외래 키가있을 수 있습니까?
- 26. 외래 키 SQLite에 유용합니까?
- 27. 외래 키 : 외래 키 제약
- 28. 기존 기본 키와 일치하지 않는 열 찾기
- 29. 기본 키 또는 기본 키
- 30. 동일한 기본 키 테이블에 여러 개의 외래 키
I는 1 <-> 대출 학생 있으리라 믿고있어 나머지 테이블에 가야하나요? –
다릅니다. 관계가 작동하는 방식을 결정해야하며 이는 테이블 디자인을 결정합니다. 대부에는 단 하나의 서적이나 둘 이상의 서적이 있습니까? 학생과 대출의 관계에 대해서도 같은 질문이 있습니다. 이들은 당신이 해결하려고하는 문제를 사람들이 이해할 수 있도록 귀하의 포스트에 포함시켜야 할 것들입니다. – nolt2232