主键和外键
回答
下面是用这种含糊的要求开始:
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和Primary两个表中的最佳人选。
你,因为你要对学生的基础上,搜索使用studentid在两个其他表的外键...。所以这个关键应该去剩余的表中
Student
--------
Studentid -PK
Loan
---------
Loanid - PK
Studentid -FK
Book
-------
Bookid -PK
Loanid -FK
为什么一本书与贷款有关? – 2012-02-11 04:44:13
学生拿出贷款。贷款可能包含一到多本书。在我看来,这是一个有效的模型。 – nolt2232 2012-02-11 04:54:18
有趣...我假设一个学生获得贷款,并购买书籍,我不知道我是否听说过贷款官员想知道你买了什么书的情况。 – 2012-02-11 05:00:16
- 1. 主键和外键
- 2. 主键和外键?
- 3. ORA-01735主键和外键
- 4. 外键和主键错误
- 5. ScalaQuery多主键和外键
- 6. 主键和外键2
- 7. 外键和主键Postgres和索引
- 8. 同一表中的主键和外键
- 9. 主键和外键同时出现
- 10. 需要主键和外键的帮助
- 11. SQL更改语句和外键/主键
- 12. Ruby on Rails - 主键和外键
- 13. 加入由主键和外键关系
- 14. 创建主键和外键关系
- 15. 指标上主键和外键
- 16. 加入声明/主键和外键
- 17. SQL更新主键和外键同时
- 18. PHP分配主键和外键
- 19. Oracle外键或主键
- 20. Hibernate的外键的主键
- 21. 从外键查询主键
- 22. 休眠外键是主键
- 23. Grails:外键作为主键?
- 24. SQL Server主键/外键
- 25. 外键相同的主键
- 26. uml中的主键/外键
- 27. 用主键替换外键
- 28. 休眠:外键是主键
- 29. JPA:一个表的主键和另一个表的主键和外键
- 30. Entityobject键和外键
我假设学生<->贷款为1:1本,但学生<->书籍是多方面的:有多少? – 2012-02-11 04:42:15
这取决于。你需要决定这些关系是如何工作的,这将决定桌子的设计。贷款只能有一本书还是多本书?学生和贷款之间的关系也是同样的问题。这些东西应该包含在您的帖子中,以帮助人们了解您尝试解决的问题。 – nolt2232 2012-02-11 04:46:44