Không thể import dữ liệu từ excel vào SQL

Xin chào mọi người, em đang cần import dữ liệu từ file exel vào sql, nhưng nó cứ báo lỗi rằng em đã vi phạm ràng buộc toàn vẹn. Em nhìn mãi không biết vi phạm chỗ nào hết, nhờ mọi người xem giúp em với ạ. Em xin cảm ơn nhiều!




Dự là chưa điền vào bảng KHOA.

Nói chung là bạn phải up cái graph hoặc là code tạo bảng bằng text.

4 Likes

Không phải đâu anh :v, em có tạo bảng KHOA rồi á.
Đây là graph đầy đủ


Lúc em nhập một lượt thì chỉ có 3 bảng được thôi, cái bảng Sinh viên phụ thuộc vô bảng KHOA nên em tạo 2 bảng này trước, nhưng nó lại có vấn đề gì đó:

Bảng Khoa có data nè:

Đây là code:


USE QLSV

CREATE TABLE KHOA(
	MAKHOA CHAR(4) PRIMARY KEY,
	TENKHOA NVARCHAR(25) UNIQUE,
	DIACHI NVARCHAR(10),
	DIENTHOAI INT
);

CREATE TABLE SINHVIEN(
	MSSV CHAR(8) PRIMARY KEY,
	HOTEN NVARCHAR(25),
	NGAYSINH DATE,
	MAKHOA CHAR(4),
	CONSTRAINT FK_DIEUKIEN_MAKHOA FOREIGN KEY (MAKHOA) REFERENCES KHOA(MAKHOA)
);

CREATE TABLE MONHOC(
	MAMON VARCHAR(4) PRIMARY KEY,
	TENMON NVARCHAR(25),
	SOTINCHI INT CHECK(SOTINCHI BETWEEN 1 AND 5) DEFAULT 3
);

CREATE TABLE LOPMONHOC(
	MALOP INT PRIMARY KEY,
	MAMON VARCHAR(4),
	NGAYMO DATE,
	TENGV NVARCHAR(25),
	SOSVTOIDA INT,
	CONSTRAINT FK_DIEUKIEN_MAMON FOREIGN KEY (MAMON) REFERENCES MONHOC(MAMON)
);

CREATE TABLE DANGKYHOC(
	MSSV CHAR(8),
	MALOP INT,
	HOCKY INT CHECK(HOCKY BETWEEN 1 AND 8),
	PRIMARY KEY(MSSV, MALOP),
	CONSTRAINT FK_DKIEN_MASV FOREIGN KEY (MSSV) REFERENCES SINHVIEN(MSSV),
	CONSTRAINT FK_DKIEN_MALOP FOREIGN KEY (MALOP) REFERENCES LOPMONHOC(MALOP)
);

Bảng DANGKYHOC đúng ra là chép vào sau cùng, vì phụ thuộc hai bảng kia, import ngay từ đầu là sẽ báo lỗi bảng đó. Giờ import lại bảng ấy là được.

4 Likes

Cái bảng DANGKYHOC lỗi là do bảng SINHVIEN chưa import vào, em đang cố import bảng SINHVIEN vào nhưng mà nó đang bị lôi á anh. Em có import cái bảng KHOA trước rồi, giờ em import cái bảng SINHVIEN riêng, nhưng nó bị lỗi gì á, em không tìm được:

Em biết nó bị gì rồi, lúc nãy em có xóa 1 cái input sai thứ 7 của bảng SINHVIEN, không biết sao mà cái SQL này nó nhận kiểu gì mà nó input luôn cái dòng đã xóa đó, nó không thể input báo lỗi là nó primary key là NOT NULL, mà cái dòng xóa thứ 7 hồi nãy chính là NULL, sau khi xóa primary key thì nó import vào được và thành ra thế này đây:


Em vẫn chưa biết làm sao để chỉnh cho nó thành primary key lại được nữa :(((
Dữ liệu ban đầu :’(

Em đã sửa được rồi, chỉ cần xóa luôn cái dòng đó là được.

3 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?