簡體   English   中英

主鍵和外鍵

[英]primary key and foreign key

我有3張桌子

   Student    Loan    Book
 - StudentID  LoanID  BookID

我需要設置哪些外鍵,以便在給定學生姓名時,搜索該學生的所有貸款並顯示書籍詳細信息

從這樣模糊的要求開始:

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)
);
Student
--------      
Studentid -PK

Loan
---------
Loanid  - PK
Studentid -FK


Book
-------
Bookid  -PK
Loanid   -FK

不知道您擁有哪些列,假設您在student表中有studentId,那么這將是Student中的primary以及其他兩個表中的foriegn的最佳候選人。

您必須在其他兩個表中都使用studentid作為外鍵...因為要基於student進行搜索。 所以這個鍵應該放在其余的表中

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM