Tải bản đầy đủ (.docx) (9 trang)

Bai Tap SQL SEVER

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (122.53 KB, 9 trang )

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>

<b>BÀI TẬP HỆ QUẢN TRỊ CSDL SQL SERVER 2000</b>



<b>Bài 1.</b>



Cho cơ sở dữ liệu quản lý bán hàng gồm các bảng dữ liệu sau:


+ Bảng DMKhach để lưu các danh mục các khách hàng gồm các thuộc tính sau:


+ Bảng DMHang để lưu danh mục


hàng hoá gồm các thuộc tính


sau:


+ Bảng <b>HoaDonBan để</b>


lưu danh sách các đơn hàng


gồm các thuộc tính sau:


Tên Thuộc tính <b>Giải thích</b>


SoHD Số hố đơn bán


MaKhach Mã khách hàng


NgayHD Ngày hoá đơn


DienGiai Diễn giải


+ Bảng ChiTietHoaDon để lưu chi tiết các hố đơn bán hàng gồm các thuộc tính sau:


<b>Yêu cầu</b>


1/ Hãy tạo cấu trúc cơ sở dữ liệu


trên(Dùng trình soạn thảo Query


Analyzer; Với mỗi bảng nếu có


ràng buộc khố chính hoặc ràng


buộc khố ngồi u cầu định nghĩa đầy đủ)
Thực hiện các câu lệnh truy vấn sau:


1. Đưa ra danh sách mặt hàng chưa được bán trong tháng 9 năm 2009


2. Đưa ra danh sách khách hàng có địa chỉ ở Thái Nguyên và từng mua hàng trong tháng 9 năm 2009
3. Đưa ra số lượng đã bán tương ứng của từng mặt hàng trong tháng 9 năm 2009


4. Đưa ra tổng số lượng hàng đã bán cho mục đích mua hàng ‘Tiếp khách’
5. Hiển thị thông tin khách hàng đã từng mua hàng tại cửa hàng


2/ Tạo View để tổng hợp dữ liệu về từng mặt hàng đã được bán (Cấu trúc View gồm các thuộc tính: MaHang,
TenHang, DVT, SoLuongBan)


3. Tạo View để tổng hợp dữ liệu về các mặt hàng đã được bán với số lượng lớn nhất.
4/ Tạo View để tổng hợp dữ liệu về các khách hàng đã mua hàng trong ngày 20/10/2005.


5/ Tạo thủ tục có tham số vào là @SoHD để đưa ra danh mục các mặt hàng có trong hố đơn trên.


6/ Tạo thủ tục có tham số vào là @Ngay để đưa ra danh mục các mặt hàng đã được bán vào ngày trên (Danh


sách đưa ra gồm các thuộc tính sau: MaHang, TenHang, DVT, SoLuong).


7/ Tạo TRIGGER để kiểm tra khi nhập dữ liệu vào bảng ChiTietHoaDon nếu số lượng hoặc đơn giá nhập vào
nhỏ hơn 0 thì in ra màn hình thơng báo lỗi “Dữ liệu nhập vào khơng hợp lệ” và bản ghi này không được phép
nhập vào bảng; Ngược lại in ra màn hình thơng báo “Dữ liệu đã được nhập thành công”.


8/ Tạo kiểu dữ liệu CURSOR để lưu trữ thông tin về các mặt hàng đã được bán trong ngày 20/11/2006. Sau đó
đưa ra màn hình danh sách dữ liệu trên.


9/ Thêm mới một trường TongTien vào bảng HoaDonBan


10/ Dùng kiểu dữ liệu CURSOR để cập nhập dữ liệu cho trường TongTien


<b>Bài 2.</b>



Cho cơ sở dữ liệu quản lý nhà cho thuê bao gồm các bảng dữ liệu sau:


+ Bảng KHACH để lưu danh sách các khách hàng gồm các thuộc tính sau:


<b>Tên Thuộc tính</b> <b>Giải thích</b>


MaK Mã khách hàng


TenK Tên khách hàng


ĐiaChi Địa chỉ khách


SoDT Số điện thoại


+ Bảng NHA để lưu trữ thông tin về các ngôi nhà cho thuê, gồm các thuộc tính sau:
Tên Thuộc tính <b>Giải thích</b>



MaN Mã nhà


TenChuNha Tên chủ nhà


GiaThue Giá thuê


DiaChiNha Địa chỉ nhà


<b>Tên Thuộc tính</b> <b>Giải thích</b>


MaKhach Mã khách hàng
TenKhach Tên khách hàng
DiaChi Địa khách hàng
DienThoai Điện thoại


<b>Tên Thuộc tính</b> <b>Giải thích</b>


MaHang Mã hàng
TenHang Tên hàng
DVT Đơn vị tính


<b>Tên Thuộc tính</b> <b>Giải thích</b>


SoHD Số hố đơn bán


MaHang Mã hàng


SoLuong Số lượng bán



</div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>

+Bảng HOPDONG để lưu trữ thông tin về các hợp đồng thuê nhà của khách, gồm các thuộc tính sau:
Tên Thuộc tính <b>Giải thích</b>


SoHĐ Số hợp đồng


MaN Mã nhà


MaK Mã khách


NgayBĐ Ngày bắt đầu hợp đồng
NgayKT Ngày kết thúc hợp đồng


<b>Yêu cầu:</b>



1/ Hãy tạo cấu trúc cơ sở dữ liệu trên (Dùng trình soạn thảo Query Analyzer; Với mỗi bảng nếu có ràng buộc
khố chính hoặc ràng buộc khố ngồi u cầu sv phải định nghĩa đầy đủ).


Thực hiện các câu lệnh truy vấn sau:


1. Đưa ra danh sách các ngôi nhà đang được thuê


2. Đưa ra thông tin về khách hàng đã thuê ngôi nhà có mã là ‘NHA09’
3. Đưa ra thơng tin về những ngơi nhà hiện chưa có người nào th
2/ Tạo View để tổng hợp thơng tin về những ngơi nhà có giá thuê cao nhất.


3/ Tạo View để tổng hợp thông tin về các khách hàng ngày hôm nay đã hết hạn hợp đồng.
4/ Tạo View để tổng hợp thông tin về các ngôi nhà chưa từng được ai thuê.


5/ Tạo thủ tục có một tham số vào là @ngay để đưa ra danh sách các khách hàng đã hết hạn hợp đồng vào ngày
trên.



6/ Tạo thủ tục để đưa ra màn hình danh sách các ngơi nhà hiện tại chưa có khách hàng thuê.


7/ Tạo thủ tục có tham số là @Ngay để đưa ra danh sách các khách hàng bắt đầu thuê nhà vào ngày trên.


8/ Tạo Trigger để kiểm tra khi nhập dữ liệu vào bảng NHA nếu giá thuê nhập vào <0 thì đưa ra màn hình thông
báo lỗi “Dữ liệu nhập vào không hợp lệ” và bản ghi này không được phép nhập vào bảng; Ngược lại in ra màn
hình thơng báo “Dữ liệu đã được nhập thành công”.


9/ Sử dụng kiểu dữ liệu CURSOR để đưa ra màn hình thơng tin về các khách hàng đang th các ngơi nhà có
địa chỉ ở “Tổ 10, phường Phan Đình Phùng”.


10/ Sử dụng kiểu dữ liệu CURSOR để đưa ra danh sách các ngôi nhà hiện tại chưa có khách hàng thuê.


<b>Bài 3. </b>



Cho cơ sở dữ liệu quản lý sinh viên bao gồm các bảng dữ liệu sau:
+ Bảng LOP để lưu thông tin về các lớp học gồm có các thuộc tính sau:


Tên Thuộc tính <b>Giải thích</b>


MaLop Mã lớp học


TenLop Tên lớp học


+ Bảng TINH để lưu trữ thông tin về các tỉnh thành phố, gồm các thuộc tính sau:
Tên Thuộc tính <b>Giải thích</b>
MaTinh Mã tỉnh, thành phố
TenTinh Tên tỉnh, thành phố
+Bảng SINHVIEN để lưu trữ thông tin về các sinh viên, gồm các thuộc tính sau:



Tên Thuộc tính <b>Giải thích</b>


MaSV Mã sinh viên


HoTen Họ tên sinh viên
NgaySinh Ngày sinh
GioiTinh Giới tính


MaLop Mã lớp


MaTinh Mã tỉnh


DTB Điểm trung bình


<b>u cầu:</b>



1/ Hãy tạo cấu trúc cơ sở dữ liệu trên (Dùng trình soạn thảo Query Analyzer; Với mỗi bảng nếu có ràng buộc
khố chính hoặc ràng buộc khố ngồi u cầu sv phải định nghĩa đầy đủ).


Thực hiện các câu lệnh truy vấn sau:


1. Đưa ra thông tin về những sinh viên có điểm trung bình dưới 5
2. Đưa ra thơng tin về sinh viên có địa chỉ ở Thái Nguyên


3. Đưa ra thông tin về các lớp học không có sinh viên nào ở Hà Nội
2/ Tạo View để tổng hợp thơng tin về các sinh viên có điểm trung bình cao nhất.


3/ Tạo View để tổng hợp thơng tin về các sinh viên có điểm trung bình cao nhất theo từng lớp học.



4/ Tạo thủ tục để đưa ra sĩ số sinh viên cho từng lớp học (Danh sách đưa ra phải có các thuộc tính sau: MaLop,
TenLop, SiSo).


</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>

6/ Tạo TRIGGER để kiểm tra dữ liệu khi nhập vào bảng sinh viên: nếu điểm trung bình nhập vào <0 thì đưa ra
màn hình thơng báo lỗi và bản nghi này không được phép nhập vào bảng dữ liệu, ngược lại đưa ra thông báo bản
ghi đã nhập thành công.


7/ Sử dụng kiểu dữ liệu CURSOR để đưa ra màn hình danh sách sinh viên học ở lớp có tên là ‘Cao đẳng 2A’.


<b>Bài 4:</b>



Cho cơ sở dữ liệu quản lý Thực tập gồm 3 bảng dữ liệu sau:


+ Bảng SINHVIEN chứa danh sách sinh viên bao gồm các thuộc tính sau:
<b>Tên Thuộc tính</b> <b>Giải thích</b>


Masv Mã số sinh viên


HotenSV Họ tên sinh viên


NS Ngày sinh


Diachi Địa chỉ


+ Bảng DETAI chứa danh sách các đề tài thực tập gồm các thuộc tính sau:
<b>Tên Thuộc tính</b> <b>Giải thích</b>


MaDT Mã số đề tài


TenDT Tên đề tài



GVHD Họ và tên giáo viên hướng dẫn đề tài


+ Bảng SV_DETAI chứa thơng tin về tình hình thực tập của sinh viên theo các đề tài, gồm các

thuộc tính sau:



<b>Tên Thuộc tính</b> <b>Giải thích</b>


MaDT Mã số đề tài


MaSV Mã số sinh viên


NTT Nơi sinh viên đến thực tập


KQ Kết quả thực tập của sv theo đề tài đã chọn


<b>Yêu cầu:</b>



1/ Hãy tạo cấu trúc cơ sở dữ liệu trên (Dùng trình soạn thảo Query Analyzer; Với mỗi bảng nếu có ràng buộc
khố chính hoặc ràng buộc khố ngồi u cầu sv phải định nghĩa đầy đủ).


2/ Tạo View để tổng hợp thông tin về các sinh viên tham gia thực tập tại quê.
3/ Tạo View để tổng hợp thông tin về các sinh viên có kết quả thực tập cao nhất.


4/ Tạo View để tổng hợp thông tin về mỗi giáo viên đã và đang hướng dẫn bao nhiêu sinh viên thực tập.
5/ Tạo thủ tục có tham số vào là @gvhd để đưa ra danh sách các sinh viên do giáo viên trên hướng dẫn.
6/ Tạo thủ tục có tham số vào là @NTT để đưa ra danh sách các sinh viên thực tập tại địa điểm trên.
7/ Tạo thủ tục để đưa ra danh sách các đề tài chưa từng có sinh viên nào tham gia đăng ký thực tập.


8/ Tạo TRIGGER để kiểm tra khi nhập dữ liệu vào bảng SV_DETAI nếu kết quả thực tập nhỏ hơn 0 thì đưa ra


màn hình thơng báo lỗi và bản nghi này không được phép nhập vào bảng dữ liệu, ngược lại đưa ra thông báo bản
ghi đã nhập thành công.


9/ Dùng kiểu dữ liệu CURSOR để đưa ra màn hình danh sách các sinh viên phải thực tập lại (những sinh viên có
kết quả thực tập < 5 yêu cầu phải thực tập lại)


10/ Dùng kiểu dữ liệu CURSOR để đưa ra màn hình danh sách các đề tài có kết quả thực tập cao nhất


<b>Bài 5:</b>



Cho cơ sở dữ liệu quản lý thư viện gồm các bảng dữ liệu sau:


+Bảng SACH chứa danh mục sách gồm các thơng tin thuộc tính sau:
<b>Tên Thuộc tính</b> <b>Giải thích</b>


MaSach Mã sách


TenSach Tên sách


NXB Tên nhà xuất bản


NamXB Năm xuất bản


TenTG Tên tác giả


+Bảng DOCGIA chứa danh sách độc giả gồm các thuộc tính sau:
<b>Tên Thuộc tính</b> <b>Giải thích</b>


MaDG Mã độc giả



TenDG Tên độc giả


DiaChiDG Địa chỉ độc giả


+Bảng MUON_TRA chứa thông tin về sự mượn và trả sách của độc giả gồm các thuộc tính:
<b>Tên Thuộc tính</b> <b>Giải thích</b>


</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>

MaSach Mã sách


NgayMuon Ngày mượn


SL Số lượng mượn


NgayHenTra Ngày hẹn trả


NgayTra Ngày trả


<b>Yêu cầu:</b>



1/ Hãy tạo cấu trúc cơ sở dữ liệu trên (Dùng trình soạn thảo Query Analyzer; Với mỗi bảng nếu có ràng buộc
khố chính hoặc ràng buộc khố ngồi u cầu sv phải định nghĩa đầy đủ).


2/ Tạo View để tổng hợp thông tin về các độc giả đã hết hạn trả sách nhưng chưa trả.
3/ Tạo View để tổng hợp thông tin về danh mục sách chưa từng được độc giả nào mượn.


4/ Tạo View để tổng hợp thông tin về từng loại sách hiện tại có độc giả đang mượn ( Cấu trúc View gồm các
thuộc tính sau: MaSach, TenSach, TenTG, SoLuong).


5/ Tạo thủ tục có tham số là @MaDG để đưa ra danh mục sách mà độc giả trên đang mượn.



6/ Tạo thủ tục có tham số là @NgayMuon để đưa ra danh sách các độc giả đã mượn sách vào ngày trên.
7/ Tạo thủ tục để đưa ra danh sách các độc giả ngày hôm nay là hạn cuối cùng phải trả sách cho thư viện.
8/ Tạo TRIGGER để kiểm tra dữ liệu khi nhập vào bảng MUON_TRA nếu số lượng mượn nhỏ hơn 0 thì thì đưa
ra màn hình thơng báo lỗi và bản nghi này không được phép nhập vào bảng dữ liệu, ngược lại đưa ra thông báo
bản ghi đã nhập thành công.


9/ Dùng kiểu dữ liệu CURSOR để đưa ra màn hình danh sách các độc giả đã hiện tại vẫn đang mượn sách của
thư viện.


<b>Bài 6</b>



Cho cơ sở dữ liệu quản lý dự án gồm các bảng dữ liệu sau:


+ Bảng NHANVIEN chứa danh sách các nhân viên gồm các thuộc tính sau:


<b>Tên Thuộc tính</b> <b>Giải thích</b>


MaNV Mã nhân viên


Hoten Họ tên nhân viên
Ngaysinh Ngày sinh


GT Giới tính


+ Bảng DUAN chứa thơng tin về các dự án gồm có các thuộc tính sau:


<b>Tên Thuộc tính</b> <b>Giải thích</b>


MaDA Mã dự án


TenDA Tên dự án



NganSach Ngân sách


+ Bảng THAMGIA ghi danh sách sinh viên đăng ký tham gia dự án


<b>Tên Thuộc tính</b> <b>Giải thích</b>


MaDA Mã dự án


MaNV Mã nhân viên


TGBD Thời gian bắt đầu
TGKT Thời gian kết thúc


<b>Yêu cầu:</b>



1/ Hãy tạo cấu trúc cơ sở dữ liệu trên (Dùng trình soạn thảo Query Analyzer; Với mỗi bảng nếu có ràng buộc
khố chính hoặc ràng buộc khố ngồi u cầu sv phải định nghĩa đầy đủ).


2/ Tạo View để tổng hợp thông tin về các nhân viên chưa tham gia bất kỳ dự án nào.
3/ Tạo View để tổng hợp thơng tin về các dự án có ngân sách lớn nhất.


Tạo View để tổng hợp thông tin về mỗi nhân viên đã tham gia bao nhiêu dự án.


4/ Tạo thủ tục có tham số là @TenDA để đưa ra danh sách các nhân viên tham gia dự án trên.


5/ Tạo thủ tục có tham số là @TGKT và @MaDA để đưa ra danh sách các nhân viên phải hoàn thành dự án đó
vào ngày trên.


6/ Tạo TRIGGER để kiểm tra dữ liệu khi nhập vào bảng DUAN nếu ngân sách nhỏ hơn 0 thì đưa ra màn hình
thơng báo lỗi và bản nghi này không được phép nhập vào bảng dữ liệu, ngược lại đưa ra thông báo bản ghi đã
nhập thành công.



7/ Dùng kiểu dữ liệu CURSOR để đưa ra danh sách nhân viên bắt đầu thực hiện dự án “Phòng chống bệnh mắt
hột” từ ngày 20/11/2005.


8/ Dùng kiểu dữ liệu CURSOR để đưa ra danh sách các dự án chưa từng có nhân viên nào tham gia đăng ký.


<b>Bài 7</b>



</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>

+Bảng DMPhong để lưu danh sách các phịng gồm các thuộc tính sau:
<b>Tên Thuộc tính</b> <b>Giải thích</b>


MaP Mã phịng


TenP Tên phịng


+ Bảng DMTaiSan để lưu trữ thơng tin về các tài sản gồm các thuộc tính sau:
<b>Tên Thuộc tính</b> <b>Giải thích</b>


MaTS Mã tài sản


TenTS Tên tài sản


DonVi Đơn vị tính


Gia Đơn giá


+ Bảng PhanPhoi để lưu trữ thơng tin về các loại tài sản có trong từng phịng gồm các thuộc tính

sau:



<b>Tên Thuộc tính</b> <b>Giải thích</b>



MaTS Mã tài sản


MaP Mã phòng


SoLuong Số lượng


NgayPP Ngày phân phối tài sản


GhiChu Ghi chú


<b>Yêu cầu:</b>



1/ Hãy tạo cấu trúc cơ sở dữ liệu trên (Dùng trình soạn thảo Query Analyzer; Với mỗi bảng nếu có ràng buộc
khố chính hoặc ràng buộc khố ngồi u cầu sv phải định nghĩa đầy đủ).


2/ Tạo View để tổng hợp thông tin về các tài sản có đơn giá lớn nhất.


3/ Tạo View để tổng hợp thông tin về những tài sản chưa từng được phân phối cho các phòng để sử dụng.
4/ Tạo thủ tục có tham số là @TenP để đưa ra danh sách các tài sản được phân phối vào phịng trên.
5/ Tạo thủ tục có tham số là @TenTS để đưa ra danh sách các phòng được phân phối tài sản trên.


6/ Tạo TRIGGER để kiểm tra dữ liệu khi nhập vào bảng DMTaiSan nếu đơn giá nhập vào nhỏ hơn 0 thì đưa ra
màn hình thơng báo lỗi và bản nghi này không được phép nhập vào bảng dữ liệu, ngược lại đưa ra thông báo bản
ghi đã nhập thành công.


<b>Bài 8</b>



Cho cơ sở dữ liệu quản lý điểm thi gồm các bảng dữ liệu sau:



+ Bảng SinhVien để lưu danh mục thông tin về sinh viên gồm các trường sau:
Tên Thuộc tính <b>Giải thích</b>


MaSV Mã sinh viên


TenSV Tên sinh viên


NgaySinh Ngày sinh
GioiTinh Giới tính


QueQuan Địa chỉ


+ Bảng MonHoc chứa danh mục các môn học gồm các trường sau:
<b> Tên Thuộc tính</b> <b>Giải thích</b>


MaM Mã mơn


TenM Tên mơn


DVHT Đơn vị học trình


+ Bảng Diem để lưu trữ thông tin về điểm thi theo từng môn học của mỗi sinh viên bao gồm các trường sau:
Tên Thuộc tính <b>Giải thích</b>


MaM Mã mơn


MaSV Mã sinh viên


DiemThi Điểm thi



<b>Yêu cầu</b>



1/ Hãy tạo cấu trúc cơ sở dữ liệu trên (Dùng trình soạn thảo Query Analyzer; Với mỗi bảng nếu có ràng buộc
khố chính hoặc ràng buộc khố ngồi u cầu sv phải định nghĩa đầy đủ).


2/ Tạo View để tổng hợp thông tin về các sinh viên có điểm thi cao nhất của mơn học có tên là “Cơ sở dữ liệu”.
3/ Tạo thủ tục có tham số là @TenM để đưa ra danh sách sinh viên phải thi lại môn học trên.


</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>

<b>Bài 9</b>



Cho cơ sở dữ liệu quản lý gồm các bảng dữ liệu sau:


+ Bảng GIAOVIEN để lưu các thông tin về giáo viên gồm các thuộc tính sau:


+ Bảng HOCVI để lưu thông tin


về học vị gồm các thuộc tính


sau:


+ Bảng


<b>CHUYENNGANH để lưu danh sách các chuyên ngành gồm các thuộc tính sau:</b>
Tên Thuộc tính <b>Giải thích</b>


MaCN Mã chuyên ngành


TenCN Tên chuyên ngành


+ Bảng GV_HV_CN để lưu thông tin về học vị của giáo viên gồm các thuộc tính sau:


<b>Yêu cầu:</b>


1/ Hãy tạo cấu trúc cơ sở dữ liệu


trên(Dùng trình soạn thảo Query


Analyzer; Với mỗi bảng nếu có ràng


buộc khố chính hoặc ràng buộc


khố ngồi u cầu định nghĩa đầy đủ)


2/ Tạo View để cho biết thông tin về các giáo viên có học vị là “Tiến sỹ”
3/ Tạo View để cho biết thơng tin về các giáo viên có chun ngành “Kinh tế”
4/ Tạo View để cho biết thông tin về các giáo viên có địa chỉ ở “Thái Nguyên”


5/ Tạo thủ tục có tham số vào là @Nam để đưa ra tên của các giáo viên nhận học vị “Tiến sỹ vào năm trên.
6/ Tạo thủ tục nhập dữ liệu cho bảng GIAOVIEN


7/ Tạo thủ tục có tham số vào là @TenHV để đưa ra thông tin về các giáo viên có tên học vị trên


8/ Tạo TRIGGER để kiểm tra khi nhập dữ liệu vào bảng GV_HV_CN nếu năm nhập vào nhỏ hơn 0 thì in ra màn
hình thơng báo lỗi “Dữ liệu nhập vào không hợp lệ” và bản ghi này không được phép nhập vào bảng; Ngược lại
in ra màn hình thơng báo “Dữ liệu đã được nhập thành công”.


9/ Dùng kiểu dữ liệu CURSOR để đưa ra thông tin về từng giáo viên của từng chuyên ngành.


<b>Bài 10</b>



Cho cơ sở dữ liệu quản lý gồm các bảng dữ liệu sau:



+ Bảng TOCONGDOAN để lưu thông tin về các chi đồn gồm các thuộc tính sau:


+ Bảng CONGDOAN để


lưu thông tin về các đoàn viên


gồm các thuộc tính sau:


+ Bảng KHENTHUONG


để lưu thông tin về tình hình khen


thưởng của các cơng đồn viên


gồm các thuộc tính sau:


Tên Thuộc tính Giải thích


MaCDV Mã đoàn viên


MSKT Mã số khen thưởng


Ldo Lý do khen thưởng


Nam Năm khen thưởng


Yêu cầu:


1.Hãy tạo cấu trúc cơ sở dữ liệu trên (Dùng trình soạn thảo Query Analyzer; Với mỗi bảng nếu có ràng buộc


khố chính hoặc ràng buộc khố ngồi u cầu sv phải định nghĩa đầy đủ).


2. Hãy tạo view để tổng hợp thông tin về các cơng đồn viên đã được khen thưởng của tổ cơng đồn “Hệ thống
thơng tin”.


3. Hãy tạo view cho biết thơng tin về các cơng đồn viên chưa từng được khen thưởng.


4. Hãy tạo view để thông tin về các công đoàn viên được khen thưởng về việc hoàn thành đề tài câp bộ.
5. Tạo thủ tục có tham số vào @TenTCD để đưa ra thơng tin về những đồn viên của chi đồn trên.


6. Tạo thủ tục có tham số vào @TenTCD, @Nam để đưa ra thông tin về những cơng đồn viên của tổ cơng đồn
đã được khen thưởng vào năm trên.


7. Tạo thủ tục có tham số vào @Tencd để xố thơng tin về những cơng đồn viên thuộc chi đoàn trên.


8. Tạo Trigger để kiểm tra việc nhập dữ liệu cho bảng KHENTHUONG. Nếu năm khen thưởng nhỏ hơn 0 thì in
ra thơng báo dữ liệu khơng hợp lệ và bản ghi không được phép nhập vào bảng. Ngược lại thì in ra thơng báo dữ
liệu nhập thành cơng.


<b>Tên Thuộc tính</b> <b>Giải thích</b>


MaGV Mã giáo viên
TenGV Tên giáo viên
DiaChi Địa chỉ giáo viên
DienThoai Điện thoại giáo viên


<b>Tên Thuộc tính</b> <b>Giải thích</b>


MaHV Mã học vị
TenHV Tên học vị



<b>Tên Thuộc tính</b> <b>Giải thích</b>


MaGV Mã giáo viên
MaHV Mã học vị
MaCN Mã chuyên ngành
Nam Năm đạt học vị


Tên Thuộc tính Giải thích
MaTCD Mã tổ cơng đồn
TenTCD Tên tổ cơng đồn
Tên Thuộc tính Giải thích


MaCDV Mã cơng đồn viên
TenCDV Tên cơng đồn viên
NgayS Ngày sinh


</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>

9. Sử dụng kiểu dữ liệu Cursor để tổng hợp thông tin về những công đoàn viên chưa được khen thưởng trong
năm 2007.


<b>Bài 11</b>



Cho cơ sở dữ liệu quản lý điểm gồm 3 bảng dữ liệu sau:


+ Bảng SINHVIEN chứa danh sách sinh viên bao gồm các thuộc tính sau:
Tên Thuộc tính Giải thích


MaSV Mã số sinh viên


HotenSV Họ tên sinh viên



NS Ngày sinh


Diachi Địa chỉ


DVHT Đơn vị học trình
+ Bảng MON chứa danh sách các mơn học gồm các thuộc tính sau:


Tên Thuộc tính Giải thích


MaM Mã mơn


TenM Tên mơn


+ Bảng DIEM chứa thơng tin về điểm của sinh viên theo các môn học gồm các thuộc tính sau:
Tên Thuộc tính Giải thích


MaM Mã môn


MaSV Mã số sinh viên


Phach Số phách


DIEM Điểm thi


Yêu cầu:


1/ Hãy tạo cấu trúc cơ sở dữ liệu trên (Dùng trình soạn thảo Query Analyzer; Với mỗi bảng nếu có ràng buộc
khố chính hoặc ràng buộc khố ngồi u cầu sv phải định nghĩa đầy đủ).



2/ Tạo View để tổng hợp thơng tin về sinh viên có điểm thi cao nhất của môn “CSDL”.
3/ Tạo View để tổng hợp thông tin về sinh viên có địa chỉ ở “Thái Nguyên”


4/ Tạo View cho biết thông tin về các sinh viên sinh trước năm 1980


5/ Tạo thủ tục có tham số đầo vào @TenM để đưa ra danh sách các sinh viên có điểm thi chưa đạt của mơn học
trên.


6/ Tạo thủ tục có tham số đầo vào @Diem để đưa ra danh sách các sinh viên có điểm thi thấp hơn điểm trên của
môn học “CSDL”.


7/ Tạo Trigger để kiểm tra việc nhập dữ liệu cho bảng DIEM. Nếu điêm nhỏ hơn 0 hoặc điểm lớn hơn 10 thì in
ra thơng báo dữ liệu khơng hợp lệ và bản ghi không được phép nhập vào bảng. Ngược lại thì in ra thơng báo dữ
liệu nhập thành cơng.


8/ Dùng kiểu dữ liệu CURSOR để đưa ra màn hình danh sách các sinh viên có điểm thi cao nhất của các môn
học?


<b>Bài 12</b>



Cho cơ sở dữ liệu quản lý khách sạn gồm các bảng dữ liệu sau:


+ Bảng KhachHang để lưu danh mục thông tin về khách hàng tại khách sạn gồm các trường sau:
Tên Thuộc tính Giải thích


MaKhach Mã khách


TenKhach Tên khách hàng


ĐiaChi Địa chỉ



SDT Số điện thoại


+ Bảng Phong để lưu thơng tin về các phịng có trong khách sạn gồm các trường sau:
Tên Thuộc tính Giải thích


MaP Mã phịng


TenP Tên phịng


LoaiP Loại phịng


Gia Đơn giá


+ Bảng DatPhong (Đặt phòng) để lưu trữ thơng tin việc đặt phịng của khách:
Tên Thuộc tính Giải thích


MaKhach Mã khách


MaP Mã phịng


NgayNhan Ngày nhận phịng
NgayTra Ngày trả phòng
Yêu cầu:


1/ Hãy tạo cấu trúc cơ sở dữ liệu trên (Dùng trình soạn thảo Query Analyzer; Với mỗi bảng nếu có ràng buộc
khố chính hoặc ràng buộc khố ngồi u cầu sv phải định nghĩa đầy đủ).


2/ Tạo thủ tục để tăng giá của tất cả các phòng trong khách sạn lên 5%.



3/ Tạo View để tổng hợp thông tin về các khách hàng hiện tại đang thuê phòng tại khách sạn.


4/ Tạo View để tổng hợp thơng tin hố đơn thanh tốn của khách hàng (hố đơn gồm các thuộc tính sau: (Mã
khách, Tên khách, Mã phòng, Đơn Giá, Ngày nhận, Ngày Trả, Thành Tiền).


</div>
<span class='text_page_counter'>(8)</span><div class='page_container' data-page=8>

7/ Tạo thủ tục để đưa ra danh sách khách hàng ngày hơm nay phải trả phịng.


8/ Tạo trigger để kiểm tra dữ liệu khi cập nhật vào bảng Phòng phải đảm bảo dữ liệu đơn giá >0.


9/ Tạo trigger để kiểm tra dữ liệu khi nhập vào bảng DatPhong phải đảm ngày trả phịng ln lớn hơn hoặc bằng
ngày nhận phòng.


10/ Dùng kiểu dữ liệu CURSOR để đưa ra danh sách khách hàng ngày hôm nay phải trả phòng.


<b>Bài 13</b>



Cho cơ sở dữ liệu gồm các bảng dữ liệu sau:


+ Bảng NhanVien để lưu thông tin về nhân viên gồm các thuộc tính sau:
Tên Thuộc tính Giải thích


MaNV Mã nhân viên


TenNV Tên nhân viên


DiaChi Địa chỉ


Map Mã phòng


Luong Lương của nhân viên



+ Bảng Phong để lưu thơng tin về các phịng ban trong cơ quan gồm các thuộc tính sau:
Tên Thuộc tính Giải thích


MaP Mã phòng


TenP Tên phòng


DiaChiP Địa chỉ phòng


SDT Số điện thoại


+ Bảng NgoaiNgu (ngoại ngữ) gồm các thuộc tính sau:
Tên Thuộc tính Giải thích


MaNN Mã ngoại ngữ


TenNN Tên ngoại ngữ


+ Bảng TrinhDo_NN (trình độ ngoại ngữ) để lưu trữ thơng tin về trình độ ngoại ngữ của nhân viên:
Tên Thuộc tính Giải thích


MaNV Mã nhân viên


MaNN Mã ngoại ngữ


TrinhDo Trình độ ngoại ngữ
Yêu cầu:


1/ Hãy tạo cấu trúc cơ sở dữ liệu trên (Dùng trình soạn thảo Query Analyzer; Với mỗi bảng nếu có ràng buộc


khố chính hoặc ràng buộc khố ngồi u cầu sv phải định nghĩa đầy đủ).


2/ Tạo View để tổng hợp thơng tin về mỗi phịng hiện tại có bao nhiêu nhân viên.


3/ Tạo View để tổng hợp thông tin về các nhân viên chưa tích luỹ được trình độ ngoại ngữ nào.
4/ Tạo View để tổng hợp thông tin về các nhân viên có lương cao nhất trong phịng họ làm việc.


5/ Tạo thủ tục có tham số vào @TenNN và @TrinhDo để đưa ra danh các nhân viên biết ngoại ngữ và trình độ
trên.


6/ Tạo thủ tục có tham số vào @TenP để đưa ra tổng số nhân viên hiện có trong phịng này.


7/ Tạo thủ tục có tham số vào là @TenNN, @TenP và @TrinhDo để đưa ra danh các nhân viên ở phòng này biết
ngoại ngữ và trình độ ứng với các tham biến đã cho


8/ Tạo thủ tục có tham số vào @TenP để đưa ra danh các nhân viên có lương cao nhất của phòng này.
9/ Tạo Trigger để kiểm tra khi nhập dữ liệu vào bảng NhanVien phải đảm bảo lương của nhân viên phải >0.
10/ Dùng kiểu dữ liệu CURSOR để tăng lương cho mỗi nhân viên lên 10%.


11/ Dùng kiểu dữ liệu CURSOR để đưa ra danh sách các nhân viên có ngoại ngữ tiếng anh trình độ C..


<b>Bài 14.</b>



Cho cơ sở dữ liệu gồm các bảng dữ liệu sau:


+ Bảng NhanVien để lưu thông tin về nhân viên gồm các thuộc tính sau:
Tên Thuộc tính Giải thích


MaNV Mã nhân viên



TenNV Tên nhân viên


DiaChi Địa chỉ


Map Mã phịng


Luong Lương của nhân viên


+ Bảng Phong để lưu thơng tin về các phòng ban trong cơ quan gồm các thuộc tính sau:
Tên Thuộc tính Giải thích


MaP Mã phịng


TenP Tên phòng


DiaChiP Địa chỉ phòng


SDT Số điện thoại


+ Bảng HocVi (học vị) gồm các thuộc tính sau:


Tên Thuộc tính Giải thích


</div>
<span class='text_page_counter'>(9)</span><div class='page_container' data-page=9>

TenHV Tên học vị
+ Bảng NV_TDHV (trình độ học vị của nhân viên) :


Tên Thuộc tính Giải thích


MaNV Mã nhân viên



MaTD Mã trình độ học vị


ThoiGian Ngày tháng năm đạt trình độ này
Yêu cầu:


1/ Hãy tạo cấu trúc cơ sở dữ liệu trên (Dùng trình soạn thảo Query Analyzer; Với mỗi bảng nếu có ràng buộc
khố chính hoặc ràng buộc khố ngồi u cầu sv phải định nghĩa đầy đủ).


2/ Tạo View để tổng hợp thông tin về các nhân viên có học vị là tiến sĩ trước năm 1990.
3/ Tạo View để tổng hợp thông tin về các nhân viên chưa có học vị Tiến sĩ.


4/ Tạo thủ tục có tham số vào là @TenHV và @ThoiGian để đưa ra danh các nhân viên có học vị và thời gian
đạt được ứng với các tham biến đã cho.


5/ Tạo thủ tục có tham số vào là @TenHV và @ThoiGian để đưa ra danh các nhân viên có trình độ học vị và
thời gian đạt được học vị đó ứng với các tham biến đã cho.


6/ Tạo trigger để kiểm tra dữ liệu khi nhập vào bảng NV_TDHV sao cho thời gian đạt học vị đó phải <= thời
gian hiện tại.


7/ Dùng kiểu dữ liệu CURSOR để đưa ra danh sách các nhân viên có học vị Tiến sĩ.


<b>Bài 15.</b>



Cho cơ sở dữ liệu quản lý điểm rèn luyện gồm các bảng sau:
+ Bảng LOP để lưu thơng tin về các lớp học gồm các thuộc tính sau:


+ Bảng SINHVIEN để


lưu thông tin về các sinh viên



gồm các thuộc tính sau:


+ Bảng DIEMRL để lưu thông tin


về tình hình điểm rèn luyện của các


sinh viên gồm các thuộc tính


sau:


Tên Thuộc tính Giải thích


Masv Mã sinh viên


Hocky Học kỳ


Nam Năm học


Diem Điểm rèn luyện


Yêu cầu:


1. Hãy tạo cấu trúc cơ sở dữ liệu trên (Dùng trình soạn thảo Query Analyzer; Với mỗi bảng nếu có ràng buộc
khố chính hoặc ràng buộc khố ngồi u cầu sv phải định nghĩa đầy đủ).


2. Hãy tạo view để tổng hợp thông tin về điểm rèn luyện của những sinh viên học lớp “Cao đẳng K4A”
3. Hãy tạo view để in ra thơng tin về sinh viên có điểm rèn luyện cao nhất.


4. Tạo view để tổng hợp thông tin về những sinh viên có điểm rèn luyện<50 trong năm học 2006-2007.


5. Tạo thủ tục có tham số vào @Masv để đưa ra thông tin về điểm rèn luyện của sinh viên trên.


6. Tạo thủ tục có tham số vào @Malop, @Nam để đưa ra thông tin về điểm rèn luyện của lớp trên vào nam học
trên.


7. Tạo thủ tục có tham số vào @tenlop để đưa ra thông tin về điểm rèn luyện của lớp trên.


8. Tạo Trigger kiểm tra việc nhập dữ liệu cho bảng DIEMRL nếu điểm nhập vào <0 hoặc >100 thì đưa ra yêu
cầu nhập lại và bản ghi này không được phép nhập vào bảng, ngược lại thì in ra thơng báo nhập thành cơng.
9. Sử dụng kiểu dữ liệu Cursor để in ra màn hình danh sách điểm rèn luyện của học kỳ 1 năm học 2007-2008.
10. Sử dụng kiểu dữ liệu Cursor để in ra màn hình danh sách điểm rèn luyện của năm học 2006-2007.


</div>

<!--links-->

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×