Quản Lý Sinh Viên Bài Thực Hành (CSDL- Cơ Sở Dữ Liệu)




Yêu cầu thực hành:1. Tạo và nhập liệu
2. In ra tên các sinh viên
3. In ra tên các môn học và số tín chỉ
4. Cho biết kết quả học tập của sinh viên có mã số 8
5. Cho biết các mã số môn học phải học ngay trước môn có mã số COSC3320
6. Cho biết các mã số môn học phải học ngay sau môn có mã số COSC3320
7. Cho biết danh sách các sinh viên thuộc khoa có phụ trách môn Toán rời rạc
8. Sửa lại giá trị cột NAM của sinh viên Son thành 2
9. Xóa tất cả dữ liệu đã nhập vào các bảng
10. Xóa cấu trúc bảng đã tạo
11. Tạo lại cơ sở dữ liệu
12. Cho biết danh sách sinh viên và môn học mà sinh viên có tham gia có kết quả > 7
điểm
13. Cho biết tên các môn học phải học ngay trước môn „Cơ sở dữ liệu‟
14. Cho biết tên các môn học phải học ngay sau môn „Cơ sở dữ liệu‟
15. Cho biết tên các môn học mà giáo viên “An” có tham gia giảng dạy và tên sinh viên
theo học, sắp xếp kết quả tăng dần theo tên sinh viên
16. Thêm vào bảng SVIEN một cột mới tên là DIACHI varchar(50)

Bài thực hành 1Khoa CNTT-Trường ĐH Thủ Dầu Một Trang 617. Bổ sung địa chỉ cho SV “Sơn” là “12 Nguyễn Trãi, Q1, TPHCM”
18. Thêm vào KQUA dòng <18,135,8>. Câu lệnh này thực hiện thành công không? Tại
sao?
19. Xóa trong bảng SVIEN dòng <Son, 17, 1, CNTT>. Câu lệnh này thực hiện thành
công không? Tại sao?
20. Xóa toàn bộ cấu trúc đã tạo




Đáp Án

USE master
DROP DATABASE QLSV6

CREATE DATABASE QLSV6
USE QLSV6

CREATE TABLE SVIEN(
MASV INT NOT NULL,
TENSV NVARCHAR(20) NOT NULL,
NAM INT NOT NULL,
KHOA NCHAR(4) NOT NULL,
CONSTRAINT PK_SVIEN PRIMARY KEY(MASV)
)

CREATE TABLE MONHOC(
MAMH NCHAR(8) NOT NULL,
TENMH NVARCHAR(20) NOT NULL,
TINCHI INT NOT NULL,
KHOA NCHAR(4) NOT NULL,
CONSTRAINT PK_MONHOC PRIMARY KEY(MAMH),
CONSTRAINT UQ_MONHOC UNIQUE(TENMH)
)

CREATE TABLE DKIEN(
MAMH NCHAR(8) NOT NULL REFERENCES MONHOC(MAMH),
MAMH_TRUOC NCHAR(8) NOT NULL REFERENCES MONHOC (MAMH),
CONSTRAINT PK_DKIEN PRIMARY KEY (MAMH,MAMH_TRUOC)
)

CREATE TABLE K_HOC(
MAKH INT NOT NULL,
MAMH NCHAR(8) NOT NULL REFERENCES MONHOC(MAMH),
HOCKY INT NOT NULL,
NAM INT NOT NULL,
GV NVARCHAR(20) NOT NULL,
CONSTRAINT PK_K_HOC PRIMARY KEY (MAKH)
)

CREATE TABLE KQUA(
MASV INT NOT NULL REFERENCES SVIEN(MASV),
MAKH INT NOT NULL REFERENCES K_HOC(MAKH),
DIEM INT NOT NULL,
CONSTRAINT CK_KQUA CHECK (DIEM BETWEEN 0 AND 10 ),
CONSTRAINT PK_KQUA PRIMARY KEY (MASV,MAKH)
)

--NHAP GIA TRI BANG SV

INSERT INTO SVIEN VALUES (8,'Bao',2,'CNTT')
INSERT INTO SVIEN VALUES (17,'Son',1,'CNTT')


--NHAP GIA TRI BANG MON HOC 

INSERT INTO MONHOC VALUES ('COSC1310', 'Nhap  mon  tin hoc' ,4,  'CNTT') 
INSERT INTO MONHOC VALUES ('COSC3380', 'Cau truc du lieu',  4 , 'CNTT') 
INSERT INTO MONHOC VALUES ('MATH2410',  'Toan roi rac',  3  ,'TOAN') 
INSERT INTO MONHOC VALUES ('COSC3320' , 'Co so du lieu',  3  ,'CNTT')

-- NHAP GIA TRI BANG DIEU KIEN

INSERT INTO DKIEN VALUES ('COSC3380',  'COSC3320') 
INSERT INTO DKIEN VALUES ('COSC3380',  'MATH2410') 
INSERT INTO DKIEN VALUES ('COSC3320',  'COSC1310')

-- NHAP GIA TRI BANG KHOA HOC

INSERT INTO K_HOC VALUES (85,  'MATH2410',  1  ,2010 , 'Kim') 
INSERT INTO K_HOC VALUES (92 , 'COSC1310',  1,  2011 , 'An') 
INSERT INTO K_HOC VALUES (102 ,'COSC3320',  2,  2011 , 'Nien') 
INSERT INTO K_HOC VALUES (112 , 'MATH2410' , 1  ,2011 , 'Chau') 
INSERT INTO K_HOC VALUES (119 , 'COSC1310',  1 , 2011  ,'An') 
INSERT INTO K_HOC VALUES (135,  'COSC3380' , 1,  2011  ,'Son')

--NHAP GIA TRI BANG KET QUA 
INSERT INTO KQUA VALUES (17  ,112,  8) 
INSERT INTO KQUA VALUES(17 , 119  ,6) 
INSERT INTO KQUA VALUES(8,  85  ,10) 
INSERT INTO KQUA VALUES(8  ,92  ,10 )
INSERT INTO KQUA VALUES(8,  102 , 8) 
INSERT INTO KQUA VALUES(8 , 135  ,10 )

--In ra tên các sinh viên
SELECT TENSV 
FROM SVIEN

--In ra tên các môn học và số tín chỉ
SELECT TENMH ,TINCHI 
FROM MONHOC

--Cho biết kết quả học tập của sinh viên có mã số 8
SELECT *
FROM KQUA
WHERE MASV = 8

--Cho biết các mã số môn học phải học ngay trước môn có mã số COSC3320
SELECT MAMH_TRUOC 
FROM DKIEN
WHERE MAMH = 'COSC3320'

--Cho biết các mã số môn học phải học ngay sau môn có mã số COSC3320
SELECT MAMH 
FROM DKIEN
WHERE MAMH_TRUOC = 'COSC3320'

-- Cho biết danh sách các sinh viên thuộc khoa có phụ trách môn Toán rời rạc
SELECT MASV ,TENSV 
FROM SVIEN,MONHOC
WHERE SVIEN.KHOA=MONHOC.KHOA AND MONHOC.TENMH= 'Toan roi rac'

--Sửa lại giá trị cột NAM của sinh viên Son thành 2
UPDATE SVIEN SET NAM = 2
WHERE TENSV='Son'

--Xóa tất cả dữ liệu đã nhập vào các bảng
--DELETE FROM KQUA 

--DELETE FROM K_HOC 
--DELETE FROM DKIEN 
--DELETE FROM MONHOC 

--DELETE FROM SVIEN 


--Xóa toàn bộ cấu trúc đã tạo
--USE MASTER
--DROP DATABASE QUAN_LY_SINH_VIEN

-- Xóa cấu trúc bảng đã tạo
--DROP TABLE SVIEN
--DROP TABLE KQUA
--DROP TABLE MONHOC
--DROP TABLE DKIEN
--DROP TABLE K_HOC

--Cho biết danh sách sinh viên và môn học mà sinh viên có tham gia có kết quả > 7 điểm
SELECT KQUA.MASV ,TENSV ,DIEM 
FROM SVIEN,KQUA
WHERE KQUA.MASV=SVIEN.MASV AND KQUA.DIEM > 7

-- Cho biết tên các môn học phải học ngay trước môn „Cơ sở dữ liệu‟
SELECT MH2.TENMH 
FROM MONHOC MH1,MONHOC MH2,DKIEN
WHERE  MH1.TENMH='CO SO DU LIEU' AND MH1.MAMH=DKIEN.MAMH AND DKIEN.MAMH_TRUOC= MH2.MAMH

--Cho biết tên các môn học phải học ngay sau môn „Cơ sở dữ liệu‟
SELECT MH2.TENMH 
FROM MONHOC MH1,MONHOC MH2,DKIEN
WHERE MH1.TENMH='CO SO DU LIEU' AND MH1.MAMH=DKIEN.MAMH_TRUOC AND DKIEN.MAMH=MH2.MAMH

--Cho biết tên các môn học mà giáo viên “An” có tham gia giảng dạy và tên sinh viên theo học, sắp xếp kết quả tăng dần theo tên sinh viên
SELECT TENMH ,TENSV 
FROM SVIEN,MONHOC,K_HOC
WHERE SVIEN.KHOA=MONHOC.KHOA AND MONHOC.MAMH=K_HOC.MAMH AND K_HOC.GV='AN'
GROUP BY TENMH,TENSV
ORDER BY SVIEN.TENSV
--Thêm vào bảng SVIEN một cột mới tên là DIACHI varchar(50)
ALTER TABLE SVIEN ADD DIACHI VARCHAR(50)

--Bổ sung địa chỉ cho SV “Sơn” là “12 Nguyễn Trãi, Q1, TPHCM
UPDATE SVIEN SET DIACHI ='12 Nguyen Trai, Q1, TPHCM'
WHERE TENSV='Son'

--Thêm vào KQUA dòng <18,135,8>. Câu lệnh này thực hiện thành công không? Tại sao?
INSERT INTO KQUA VALUES(18,135,8)
--khong thuc hien duoc vi k co ma 18

--Xóa trong bảng SVIEN dòng <Son, 17, 1, CNTT>. Câu lệnh này thực hiện thành công không? Tại sao?
DELETE FROM SVIEN
WHERE SVIEN.TENSV='Son' AND SVIEN.MASV=17 AND SVIEN.NAM=1 AND SVIEN.KHOA='CNTT'



Quản Lý Sinh Viên Bài Thực Hành (CSDL- Cơ Sở Dữ Liệu) Reviewed by CNTT on March 02, 2019 Rating: 5
Bản quyền nội dung by CNTT © 2018 - 2019
Development by CNTT IT
Powered by Blogger.