0

我在将 TABLE 的 1 个主值(增量)插入另一个 TABLE(外键)时遇到问题

表1有学号的主键;如果我从表 1 中输入姓氏和名字的值,那么由于增量,学号将自动给出它自己的值,否则如果我从表 2 中输入,我想要表中的学号的值,我将增加甚至增加值如果表 1 为 NULL,则为姓氏和名字

表格1


(PK)学生_# | 姓氏 | 名

……1…………|…………………………|…… ....b.......

……2…………|…………c…………|…… ....b.......

表 2


(FK)学生_# | 年级 | 部分

......空......|.......第2年......|...... ...C1 ....

......空......|.......第3年......|...... ...D1 ....

需要


(FK)学生_# | 年级 | 部分

....................1........|........第 2 年...... ...|.....C1 ..........

..................2........|........第 3 年...... ...|.....D1 ..........

4

1 回答 1

0

在我看来,您需要一个在 table2 上具有标识种子的主键以及学生表的外键:

(PK/Identity) Table2ID | (FK)Student_# | Year_Level | Section

这样,您可以在将记录插入表 2 时插入 student_#,并且还可以为表 2 中的每一行提供唯一标识符

CREATE TABLE Table2
(
 Table2ID INT IDENTITY(1,1) PRIMARY KEY
,Student_# INT NOT NULL FOREIGN KEY REFERENCES Table1(Student_#)
,Year_Level NVARCHAR(255) --Use whatever data type you need
,Section NVARCHAR(255) --Use whatever data type you need
)

我假设您使用的是 sql server,因为您没有在问题中指定。您可能需要针对不同的 RDBMS 更改此查询。

于 2013-02-25T07:26:39.910 回答