簡體   English   中英

一是SQL Server Management Studio中的多對多關系

[英]One is to many relationship in SQL Server Management studio

我不明白為什么表中的關系被反轉了? 以及如何將外鍵設置為自動遞增? 這樣,當我在父表中插入數據時,子表中的主鍵也會增加。

以及為什么在我的圖中關系顛倒了,這里看看

在此處輸入圖片說明

應該是相反的方式,我該怎么做?

看起來對我不感興趣。 People看起來它有一個引用Address的主鍵的外鍵。 在這種情況下,不應該看起來像那樣。 這就是數據庫圖工具描繪外鍵關系的方式。

您不會將外鍵設置為自動增量。 外鍵是對另一個表中主鍵的引用。 換句話說,它將與父表中的主鍵值匹配。

老實說,我不會費心嘗試使UI適應您的要求。 相反,讓我們學習一些DDL!

CREATE TABLE dbo.People
(
  PeopleID INT IDENTITY(1,1) PRIMARY KEY,
  FirstName NVARCHAR(32)
  --, LastName, etc.
);

CREATE TABLE dbo.Address
(
  AddressID INT IDENTITY(1,1) PRIMARY KEY,
  PeopleID INT NOT NULL FOREIGN KEY 
    REFERENCES dbo.People(PeopleID),
  Address VARCHAR(255)
  --, other columns
);

數據填充示例。 假設您要添加一個名為Bob的新人,他有兩個地址。

DECLARE @PeopleID INT;

INSERT dbo.People(FirstName) SELECT N'Bob';

SELECT @PeopleID = SCOPE_IDENTITY();

INSERT dbo.Address(PeopleID, Address) SELECT @PeopleID, '255 Hemlock Lane';
INSERT dbo.Address(PeopleID, Address) SELECT @PeopleID, '345 Hutcheson Ave';

暫無
暫無

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

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