2012-02-11 6 views
1

У меня есть 3 таблицыпервичный ключ и внешний ключ

Student Loan Book 
- StudentID LoanID BookID 

, которые внешние ключи мне нужно установить так, когда дано имя студента, поиск все кредит от этого студента и показать детали книги

+0

Я принимаю студент <-> кредитов 1: 1, но студенты <-> книги является много: много? –

+1

Всё зависит от меня. Вам нужно решить, как работают отношения, и это будет диктовать дизайн таблицы. Может ли кредит иметь только одну книгу или более одной книги? Тот же вопрос о взаимоотношениях между студентами и кредитами. Это то, что вы должны включить в свой пост, чтобы помочь людям понять проблему, которую вы пытаетесь решить. – nolt2232

ответ

6

Вот начало с такими расплывчатыми требованиями:

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) 
); 
1

Не убедитесь, что у вас есть столбцы, если вы участвуете в студенческой таблице, он был бы лучшим кандидатом на первичную работу в Student и foriegn в других двух таблицах.

1

вы должны использовать studentid в качестве внешнего ключа в обеих таблицах других ... потому что вы хотите найти на основе студента. так что этот ключ должен идти в остальных таблицах

3
Student 
--------  
Studentid -PK 

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


Book 
------- 
Bookid -PK 
Loanid -FK 
+0

Почему книга должна быть связана с кредитом? –

+0

Студент берет кредит. Кредит может содержать от одного до многих книг. На мой взгляд, это действительная модель. – nolt2232

+0

Интересно ... Я бы предположил, что студент получает кредит и покупает книги, я не знаю, слышал ли я когда-нибудь случай, когда кредитный офицер хочет узнать, какие книги вы купили. –