更改表中 1 个属性的所有行数据

问题描述 投票:0回答:0

我有 2 个表有一个循环外键(1 --> 2 和 2 --> 1)。 我想向表 1 中插入数据。但由于外键,我无法一次插入所有数据。所以我把所有数据都设置为NULL。之后,我轻松地将所有数据设置为表 2。现在我想更改表 1 中的所有 NULL 数据。 我不知道该怎么办,因为:

  • 仅在新数据插入表
  • UPDATE 无法轻易更改 1 次致敬的 100 行。
-- Create table 

CREATE TABLE TEACHER
(
    ID char(5) NOT NULL,
    Name char(30),
    Date date,
    Subject_ID char(5),
    PRIMARY KEY (ID)
)
CREATE TABLE SUBJECT
(
    Subject_ID char(5) NOT NULL,
    Name char(10),
    Dean_ID char(5),
    PRIMARY KEY (Subject_ID),
    FOREIGN KEY (Dean_ID)
    REFERENCES TEACHER(ID)
)
ALTER TABLE TEACHER
ADD CONSTRAINT FK_TEACGER_SUBJECT
FOREIGN KEY (Subject_ID)
REFERENCES SUBJECT(Subject_ID)

-- Insert data
INSERT INTO TEACHER
VALUES 
('001','A',1/1/1900,NULL),
('002','B',1/1/1900,NULL),
('003','C',1/1/1900,NULL),
('004','D',1/1/1900,NULL),
...;

INSERT INTO SUBJECT
VALUES 
('001','Math','002'),
('002','Chemistry','001'),
...

--Update foreign key in table TEACHER
???

我想在外键的 100 行中将 NULL 数据更新为 NOT NULL 数据。 我知道我可以在插入后设置外键,但我想知道什么代码可以帮助我。

因为我的英语不好所以如果我说错了请原谅我

sql sql-server sql-insert
© www.soinside.com 2019 - 2024. All rights reserved.