主键和外键
回答
下面是用这种含糊的要求开始:
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. 外键和主键
- 4. ScalaQuery多主键和外键
- 5. 主键和外键2
- 6. SQL主键和外键
- 7. 主键和外键冲突
- 8. ORA-01735主键和外键
- 9. 外键和主键错误
- 10. 主键VS外键
- 11. 外键和主键Postgres和索引
- 12. 有主键和外键的drop table
- 13. SQL更新主键和外键同时
- 14. SQL更改语句和外键/主键
- 15. SQL命令,主键和外键
- 16. 复合主键和外键jpa
- 17. 加入声明/主键和外键
- 18. 需要主键和外键的帮助
- 19. 更改主键和外键的ActiveRecord
- 20. 有重复的外键和无主键
- 21. 主键和外键的插入
- 22. PHP分配主键和外键
- 23. Ruby on Rails - 主键和外键
- 24. 不清楚的外键和主键
- 25. 加入由主键和外键关系
- 26. 一个外键和两个主键
- 27. Mysql数据库...主键和外键
- 28. 主键和外键同时出现
- 29. 同一表中的主键和外键
- 30. 选择SQL与主键和外键
我假设学生<->贷款为1:1本,但学生<->书籍是多方面的:有多少? – 2012-02-11 04:42:15
这取决于。你需要决定这些关系是如何工作的,这将决定桌子的设计。贷款只能有一本书还是多本书?学生和贷款之间的关系也是同样的问题。这些东西应该包含在您的帖子中,以帮助人们了解您尝试解决的问题。 – nolt2232 2012-02-11 04:46:44