Hỏi đáp
Chia sẻ kiến thức, cùng nhau phát triển
Chào anh Long, anh cho em hỏi: trong CSDL, em tạo ra 1 bảng HANGHOA với IDDANHMUC cho nó tự động tăng, vậy mà sao khi thêm dữ liệu vào nó lại báo lỗi khóa ngoại của IDDANHMUC. Có cách nào giải quyết không anh? Em cảm ơn anh
CREATE TABLE DANHMUC
(
ID INT IDENTITY PRIMARY KEY,
TENDANHMUC NVARCHAR(40),
)
GO
CREATE TABLE HANGHOA
(
ID VARCHAR(20) PRIMARY KEY,
TENHANG NVARCHAR(40),
IDDANHMUC INT IDENTITY,
IDNHACUNGCAP VARCHAR(20),
HANSUDUNG DATETIME,
FOREIGN KEY(IDDANHMUC) REFERENCES dbo.DANHMUC(ID),
FOREIGN KEY(IDNHACUNGCAP) REFERENCES dbo.NHACUNGCAP(ID)
)
GO
SET DATEFORMAT DMY
INSERT dbo.HANGHOA
(
ID,
TENHANG,
IDNHACUNGCAP,
HANSUDUNG
)
VALUES
( '6438689', -- ID - varchar(20)
N'Laptop HP Pravillion', -- TENHANG - nvarchar(40)
'2751981', -- IDNHACUNGCAP - varchar(20)
'16/09/2033' -- HANSUDUNG - datetime
)
INSERT dbo.HANGHOA
(
ID,
TENHANG,
IDNHACUNGCAP,
HANSUDUNG
)
VALUES
( '1084358', -- ID - varchar(20)
N'Chảo chiên không dầu', -- TENHANG - nvarchar(40)
'2887796638', -- IDNHACUNGCAP - varchar(20)
'16/09/2032' -- HANSUDUNG - datetime
)
INSERT dbo.HANGHOA
(
ID,
TENHANG,
IDNHACUNGCAP,
HANSUDUNG
)
VALUES
( '33333333', -- ID - varchar(20)
N'Kem chống nắng', -- TENHANG - nvarchar(40)
'899038', -- IDNHACUNGCAP - varchar(20)
NULL -- HANSUDUNG - datetime
)
INSERT dbo.HANGHOA
(
ID,
TENHANG,
IDNHACUNGCAP,
HANSUDUNG
)
VALUES
( '2987106', -- ID - varchar(20)
N'Bếp điện hồng ngoại', -- TENHANG - nvarchar(40)
'98768906', -- IDNHACUNGCAP - varchar(20)
'27/5/2031' -- HANSUDUNG - datetime
)
GO
The statement has been terminated.
Msg 547, Level 16, State 0, Line 313
The INSERT statement conflicted with the FOREIGN KEY constraint "FK__HANGHOA__IDDANHM__31EC6D26". The conflict occurred in database "QUANLYKHO", table "dbo.DANHMUC", column 'ID'.
The statement has been terminated.
Msg 547, Level 16, State 0, Line 326
The INSERT statement conflicted with the FOREIGN KEY constraint "FK__HANGHOA__IDDANHM__31EC6D26". The conflict occurred in database "QUANLYKHO", table "dbo.DANHMUC", column 'ID'.
The statement has been terminated.
id danh mục bên HangHoa bạn bỏ identity đi nha.