Я пытаюсь создать новую строку в таблице, но сталкиваюсь с ошибками forgienKey.
Очевидно, я пытался создать новую строку в родительской таблице, но все еще сталкиваюсь с ошибками
CREATE TABLE dbo.Contacts
(
ContactId INT NOT NULL IDENTITY(1, 1) PRIMARY KEY ,
Active BIT NOT NULL
CONSTRAINT DF_Contacts_Active
DEFAULT ( 1 ) ,
FirstName NVARCHAR(100) ,
MiddleName NVARCHAR(100) ,
LastName NVARCHAR(100) ,
DOB DATE ,
ModifiedDate DATETIME
CONSTRAINT DF_Contacts_ModifiedDate
DEFAULT ( GETDATE())
);
INSERT dbo.Contacts ( Active ,
FirstName ,
MiddleName ,
LastName ,
DOB ,
ModifiedDate )
VALUES ( 0, N'William', N'James', N'Murray', '9/21/1950', '1/1/2018 3:01:47' ) ,
( 1, N'Judith', N'Olivia', N'Dench', '12/9/1934', '3/10/2011 17:52:00' ) ,
( 1, N'Terry', N'Alan', N'Crews', '7/30/1968', '9/28/2014 12:41:31' ) ,
( 1, N'Pamela', N'Suzette', N'Grier', '5/26/1949', '1/1/2018 11:52:23' ) ,
( 1, 'John', 'S.', 'Doe', '1/1/2000', '7/10/2018 19:43:22' ) ,
( 1, 'Jane', 'K.', 'Smith', '4/16/1987', '2/2/2015 9:00:00' ) ,
( 1, 'Henry', 'D.', 'Williams', '7/21/92', '5/18/17 7:29:10' ) ,
( 1, 'Jessica', 'L.', 'Jones', '8/30/88', '9/19/10 10:28:51' );
CREATE TABLE dbo.Employees
(
EmployeeId INT NOT NULL IDENTITY(1, 1) PRIMARY KEY ,
FirstName NVARCHAR(100) ,
LastName NVARCHAR(100) ,
ContactId INT NOT NULL
CONSTRAINT FK_Employees_ContactId_ref_Contacts_ContactId
REFERENCES dbo.Contacts ( ContactId ) ,
ManagerId INT
);
INSERT dbo.Employees ( FirstName ,
LastName ,
ContactId ,
ManagerId )
VALUES ( N'John', N'Doe', 5, NULL ) ,
( 'Jane', 'Smith', 6, 1 ) ,
( 'Henry', 'Williams', 7, 2 ) ,
( 'Jessica', 'Jones', 8, 3 );
- написать оператор, который создает строку, представляющую вас в Employeesтаблица без использования ключевого слова VALUES
INSERT into Employees
SELECT FirstName, LastName, ContactId + 1, ManagerId+1 FROM Employees
WHERE ContactId = 8
Update Employees
SET FirstName = 'John', LastName = 'doe'
WHERE EmployeeId = 5
Select * from Employees