SQL Server - 38


3. Viết hàm để xét những khách hàng được xét thưởng. Sau đó sử dụng hàm này để xây dựng một hàm trả về một bảng gồm các thông tin sau: Mã nhân viên, họ tên, tên phòng, kết quả (được mời thì ghi là mời, không được mời thì để trống).

4. Viết hàm để xét những nhân viên được nghỉ hưu trong năm nay. Sau đó sử dụng hàm này để xây dựng một hàm trả về một bảng gồm các thông tin sau: Mã nhân viên, họ tên, tên phòng, kết quả (được nghỉ thì ghi là nghỉ, không được nghỉ thì để trống).

Câu 5: Viết các Trigger:

1. Tạo Trigger cho bảng hoso theo yêu cầu sau:

Khi thêm mới một nhân viên thì kiểm tra tính hợp lệ của dữ liệu cần bổ sung, không trùng khoá chính và đảm bảo toàn vẹn tham chiếu.

Chỉ cho phép xóa những nhân viên đã quá tuổi nghỉ hưu.

Khi cập nhật mã nhân viên thì mã nhân viên trong bảng lương cũng được cập nhật theo.

2. Tạo Trigger cho bảng luong theo yêu cầu sau:

Khi thêm một một bản ghi thì kiểm tra tính hợp lệ của dữ liệu cần bổ sung, không trùng khoá chính và đảm bảo toàn vẹn tham chiếu.

Có thể bạn quan tâm!

Xem toàn bộ 323 trang tài liệu này.

Chỉ cho phép xóa 3 bản ghi trở xuống.

Không cho phép cập nhật hệ số lương lớn hơn 10 hoặc nhỏ hơn 0.

SQL Server - 38

3. Tạo Trigger cho bảng phòng theo yêu cầu sau:

Khi thêm mới một bản ghi kiểm tra tính hợp lệ của dữ liệu cần bổ sung, không trùng khoá chính và đảm bảo toàn vẹn tham chiếu.

Chỉ cho phép xóa những phòng mà chưa có nhân viên nào.

Không cho phép cập nhật mã phòng.

Câu 6:Các thao tác trên cơ sở dữ liệu

1. Thiết lập cấu hình dịch vụ của SQL Server.

2. Tạo file sao lưu cho cơ sở dữ liệu trên với tên là „QLD_Backup‟ thuộc loại full backup, Transaction log và differential backup, khôi phục dữ liệu từ file sao lưu đã tạo.

3. Tách bỏ cơ sở dữ liệu khỏi SQL Server.

4. Xuất file cơ sở dữ liệu sang dạng Text, Access, Excel, SQL Server.

5. Tạo lịch trình sao lưu tự động cho cơ sở dữ liệu.

Câu 7:Quản lý bảo mật và người dùng

1. Tạo người dùng đăng nhập bằng tài khoản SQL Server, bằng tài khoản của Window.

2. Gắn các nhóm quyền cho người dùng.

3. Gắn các vai trò cho người dùng.


4. Cấp quyền sử dụng select, update, insert, delete trên bảng cho người dùng.

Bài số 4:

Cho CSDL quản lý mua bán hàng (QLMBH) gồm các bảng sau: KH(MaKH, Hoten, GT, DC, DT): Chứa thông tin của các khách hàng. MH(MaMH, TenMH, Mau, DVT): Chứa thông tin của các mặt hàng.

MB(MaKH, MaMH, MB, NgayMB, SL, DG): Chứa thông tin về quá trình mua bán hàng.

Trong đó: MaKH-Mã khách hàng, Hoten-Họ và tên khách hàng, GT-Giới tính, DC-Địa chỉ, DT-Điện thoại, MaMH-Mã mặt hàng, TenMH-Tên mặt hàng, Mau-Màu sắc, DVT-Đơn vị tính, MB-Khách hàng mua hay bán, NgayMB-Ngày khách hàng mua hay bán, SL-Số lượng, DG-Đơn giá.

Câu 1: Tạo lập cơ sở dữ liệu:

1. Tạo cơ sở dữ liệu với tên là QLMBH.

2. Tạo các bảng dữ liệu

3. Thiết kế ràng buộc khóa chính, khóa ngoại, ràng buộc duy nhất, ràng buộc kiểm tra, ràng buộc mặc định cho mỗi bảng dữ liệu.

4. Tạo Diagrams cho cơ sở dữ liệu

5. Tạo chỉ mục: liên cung, phi liên cung, không gian.

6. Nhập tối thiểu 10 bản ghi cho mỗi bảng (Nhập trực tiếp hoặc nhập từ file).

Câu 2: Tạo View thực hiện các công việc sau:

1. Đưa ra các thông tin gồm mã khách hàng, họ tên, giới tính của những khách hàng đã bán mặt hàng màu „Xanh‟ với số lượng >100 trong năm 2005.

2. Đưa ra các thông tin gồm mã khách hàng, họ tên, giới tính của những khách hàng có địa chỉ „Nam Dinh‟ hoặc „Ha Noi‟ đã mua mặt hàng có đơn giá lớn hơn 200.

3. Đưa ra thông tin của các khách hàng quê „Hà Giang‟, „Bắc Giang‟, „Kiên Giang‟,

„Quảng Ninh‟, „Quảng Bình‟, „Quảng Nam‟,‟Quảng Trị‟,‟Quảng Ngãi‟.

4. Đưa ra các thông tin gồm mã khách hàng, tên khách hàng, địa chỉ, điện thoại của những khách hàng đã mua mặt hàng màu “Vang” hoặc “Xanh” trong quý 2 năm 2006.

5. Đưa ra các thông tin gồm: mã khách hàng, tên khách hàng, mã mặt hàng, tên mặt hàng, số lượng, đơn giá, số tiền của khách hàng đã bán một mặt hàng trong một lần có mã mặt hàng là „MH001‟ hoặc „MH002‟.

6. Đưa ra các thông tin của các khách hàng có tên là „Vuong‟ chưa mua hàng lần nào.

7. Đưa ra danh sách các khách hàng không bán hàng lần nào trong năm 2006.

8. Đưa ra danh sách các mặt hàng không được bán lần nào trong năm 2006.

9. Đưa ra danh sách các mặt hàng đã được mua vào nhưng chưa bán ra bao giờ.


10. Đưa ra danh sách các mặt hàng mà khách hàng đã bán có đơn giá nhỏ hơn đơn giá trung bình mỗi lần bán một mặt hàng.

11. Đưa ra danh sách các khách đã mua hàng có số lần mua nhỏ hơn 5. Danh sách đưa ra sắp xếp theo chiều giảm dần của số lần mua.

12. Đưa ra các thông tin gồm mã khách hàng, họ tên, địa chỉ, số lần mua và tổng số tiền đã mua hàng của các khách hàng có số lần mua nhỏ lớn nhất trong năm 2006.

13. Đưa ra các thông tin gồm mã mặt hàng, tên mặt hàng, số lần bán, tổng số lượng, tổng số tiền đã bán mặt hàng trong năm 2005 và có tổng số lượng mỗi lần bán một mặt hàng > 25.

14. Đưa ra thông tin các khách hàng vừa mua mặt hàng màu đỏ và vừa bán mặt hàng màu xanh trong năm 2012.

15. Đưa ra thông tin về các khách hàng đã mua hàng có số lần mua hàng lớn nhất hoặc nhỏ nhất.

Câu 3: Hãy viết các Stored Procedure để thực hiện các công việc sau:

1. Đưa ra các thông tin gồm: Mã khách hàng, họ tên, địa chỉ, giới tính (Ghi rò Nam, Nữ), điện thoại của các khách hàng với địa chỉ cho trước.

2. Đưa ra các thông tin gồm: Mã khách hàng, họ tên, địa chỉ, điện thoại, mã mặt hàng, số lượng, đơn giá, số tiền của các khách hàng đã mua hàng.

3. Đưa ra các thông tin gồm: Mã khách hàng, họ tên, địa chỉ, điện thoại, mã mặt hàng, tên mặt hàng, số lượng, đơn giá, số tiền của các khách hàng đã bán hàng hàng trong một ngày với ngày bán cho trước.

4. Đưa ra các thông tin gồm: Mã khách hàng, họ tên, địa chỉ, điện thoại, mã mặt hàng, tên mặt hàng, số lượng, đơn giá, số tiền của các khách hàng đã bán hàng với số tiền nhiều nhất hoặc nhỏ nhất.

5. Đưa ra các thông tin gồm: Mã mặt hàng, tên mặt hàng, mã khách hàng, số lượng, đơn giá, số tiền của các mặt hàng đã được mua với đơn giá lớn hơn hoặc nhỏ hơn đơn giá trung bình.

6. Đưa ra các thông tin gồm: Mã mặt hàng, số lần bán, tổng số lượng bán của mỗi mặt hàng có tổng số lượng bán lớn hơn tổng số lượng bán cho trước.

7. Xóa bản ghi từ bảng mua bán khi biết mã khách hàng và mã mặt hàng.

8. Xóa bản ghi từ bảng khách hàng khi biết mã khách hàng.

9. Khi lựa chọn bằng 1 thì xóa bản ghi từ bảng mặt hàng, mua bán khi biết mã mặt hàng; khi lựa chọn bằng 2 thì xóa bản ghi từ bảng mặt khách hàng, mua bán khi biết mã khách hàng.

10. Xoá những bản ghi trong bảng mua bán mà có ngày mua bán trước năm 2005.

11. Xoá khỏi bảng mặt hàng những mặt hàng chưa tham gia mua bán.


12. Xoá khỏi bảng khách hàng những khách hàng hiện không có bất kỳ một giao dịch nào.

13. Xoá khỏi bảng MATHANG những mặt hàng có số lượng tồn kho bằng 0.

14. Cập nhật đơn giá của những mặt hàng đã được khách hàng mua; biết rằng nếu đơn giá nhỏ hơn 10 thì tăng đơn giá lên 10%, nếu đơn giá lớn hơn hoặc bằng 10 và nhỏ hơn 20 thì tăng 15%, ngược lại thì tăng 20%.

15. Cập nhật đơn giá của những mặt hàng đã được khách hàng bán; biết rằng nếu đơn giá hơn đơn giá trung bình của mỗi lần bán thì giảm đơn giá đi lên 15%, ngược lại thì tăng 20%.

Câu 4: Xây dựng hàm

1. Xây dựng một hàm trả về một bảng gồm các thông tin sau: mã mặt hàng, tên mặt hàng, số lần bán, tổng số lượng, tổng số tiền đã bán mặt hàng.

2. Xây dựng một hàm trả về một bảng gồm các thông tin mã khách hàng, họ tên, địa chỉ, số lần mua và tổng số tiền đã mua hàng của các khách hàng có số lần mua nhỏ lớn nhất hoặc nhỏ nhất.

3. Viết hàm để xét những khách hàng được mời tham dự ngày thành lập công ty. Biết rằng những khách hàng được mời tham dự ngày thành lập công ty là những khách hàng số lần bán hàng lớn hơn 10 và tổng số tiền lớn hơn 100. Sau đó sử dụng hàm này để xây dựng một hàm trả về một bảng gồm các thông tin sau: Mã khách hàng, họ tên, địa chỉ, điện thoại, kết quả (được mời thì ghi là mời, không được mời thì để trống)

4. Viết hàm để tính lượng hàng tồn kho của mỗi mặt hàng. Sau đó sử dụng hàm này để xây dựng một hàm trả về một bảng gồm các thông tin sau: mã mặt hàng, tên mặt hàng, số lượng mua, số lượng bán, số lượng tồn kho.

5. Viết hàm để tính mức giảm giá cho khách hàng trong mỗi lần mua hàng. Biết rằng nếu số tiền mua hàng lớn hơn 200 thì giảm 2%, nếu số tiền mua hàng lớn hơn 300 thì giảm 5%. Sau đó sử dụng hàm này để xây dựng một hàm trả về một bảng gồm các thông tin sau: Mã khách hàng, họ tên, địa chỉ, điện thoại, mã mặt hàng, tên mặt hàng, số lượng, đơn giá, số tiền, số tiền được giảm, số tiền phải trả của mỗi khách hàng đã mua hàng trong một lần.

Câu 5: Viết các Trigger:

2. Tạo Trigger cho bảng khách hàng theo yêu cầu sau:

Thêm bản ghi cho bảng khách hàng thì kiểm tra tính hợp lệ của dữ liệu cần bổ sung, không trùng khoá chính và đảm bảo toàn vẹn tham chiếu, tên khách hàng được thêm không được trống, số điện thoại không được trùng nhau .

+ Chỉ cho phép xóa một khách hàng.


Không cho phép cập nhật mã khách hàng, giới tính.

3. Tạo Trigger cho bảng mặt hàng theo yêu cầu sau:

Thêm bản ghi cho bảng mặt hàng hàng thì kiểm tra tính hợp lệ của dữ liệu cần bổ sung, không trùng khoá chính và đảm bảo toàn vẹn tham chiếu, tên mặt hàng không được trùng nhau, trường đơn vị tính chỉ có miền giá trị (kg, tan, lit, m2, cai).

Khi xóa một mặt hàng thì mặt hàng tương ứng trong bảng mua bán cũng bị xóa theo.

Không cho phép cập nhật mã mặt hàng.

4. Tạo Trigger cho bảng mua bán theo yêu cầu sau:

Thêm bản ghi cho bảng mua bán thì kiểm tra tính hợp lệ của dữ liệu cần bổ sung, đảm bảo toàn vẹn tham chiếu.

Chỉ cho phép xóa 5 mặt hàng trở xuống.

Khi cập nhật thông tin thì kiểm tra tính hợp lệ của dữ liệu, không có phép cập nhật mã khách hàng, mã mặt hàng.

Câu 6:Các thao tác trên cơ sở dữ liệu

1. Thiết lập cấu hình dịch vụ của SQL Server.

2. Tạo file sao lưu cho cơ sở dữ liệu trên với tên là „QLD_Backup‟ thuộc loại full backup, Transaction log và differential backup, khôi phục dữ liệu từ file sao lưu đã tạo.

3. Tách bỏ cơ sở dữ liệu khỏi SQL Server.

4. Xuất file cơ sở dữ liệu sang dạng Text, Access, Excel, SQL Server.

5. Tạo lịch trình sao lưu tự động cho cơ sở dữ liệu trên vào 23h hàng ngày

6. Tạo lịch trình sao lưu tự động cho cơ sở dữ liệu trên vào 17h sáng thứ 2 hàng tuần.

Câu 7:Quản lý bảo mật và người dùng

1. Tạo người dùng đăng nhập bằng tài khoản SQL Server, bằng tài khoản của Window.

2. Gắn các nhóm quyền cho người dùng.

3. Gắn các vai trò cho người dùng.

4. Cấp quyền sử dụng select, update, insert, delete trên bảng cho người dùng.

Bài số 5: Cho CSDL quản lý thư viện (QLTV) gồm các bảng sau:

DG(MaDG, Hoten, GT, NS, TD, DC, NCT): Chứa thông tin về các độc giả. Sach(MaS, TenS, TG, NXB, NamXB, Gia, SL): Chứa thông tin về các cuốn sách.

Muontra(MaS, MaDG, NgayM, NgayHT, NgayT): Chứa thông tin về quá trình mượn trả sách của độc giả.

Trong đó: MaDG-Mã độc giả, Hoten-Họ tên, GT-Giới tính, NS-Ngày sinh, TD- Trình độ, DC-Địa chỉ, NCT-Nơi công tác, MaS-Mã sách, TenS-Tên sách, TG-Tác giả,


NXB-Nhà xuất bản, NamXB-Năm xuất bản, Gia-Giá tiền, SL-Số lượng, NgayM-Ngày mượn, NgayT-Ngày trả, NgayHT-Ngày hẹn trả.

Câu 1: Tạo lập cơ sở dữ liệu:

1. Tạo cơ sở dữ liệu với tên là QLTV.

2. Tạo các bảng dữ liệu

3. Thiết kế ràng buộc khóa chính, khóa ngoại, ràng buộc duy nhất, ràng buộc kiểm tra, ràng buộc mặc định cho mỗi bảng dữ liệu.

4. Tạo Diagrams cho cơ sở dữ liệu

5. Tạo chỉ mục: liên cung, phi liên cung, không gian.

6. Nhập tối thiểu 10 bản ghi cho mỗi bảng (Nhập trực tiếp hoặc nhập từ file).

Câu 2: Tạo View thực hiện các công việc sau:

1. Đưa ra các thông tin gồm mã sách, tên sách, họ tên tác giả, nhà xuất bản, giá tiền, mã độc giả, họ và tên độc giả, ngày mượn, ngày trả của những cuốn sách của nhà xuất bản „Giao duc‟ hoặc „Thanh nien‟ xuất bản năm 2008. Danh sách đưa ra sắp xếp theo chiều giảm dần của giá tiền.

2. Đưa ra các thông tin gồm mã độc giả, họ tên độc giả có trình độ „Cao dang‟ hoặc

„Dai hoc‟ công tác tại „DH SPKND‟. Danh sách đưa ra sắp xếp theo chiều giảm dần của tuổi.

3. Đưa ra các thông tin gồm mã độc giả, họ và tên độc giả, giới tính, nơi công tác của những độc giả đã mượn sách „Co so du lieu‟ hoặc „Phan tich thiet ke‟ quá hạn mà chưa trả.

4. Đưa ra các thông tin gồm mã sách, tên sách, họ tên tác giả, nhà xuất bản, giá tiền, mã độc giả, họ và tên độc giả, ngày mượn, ngày trả của những cuốn sách xuất bản năm 2008 hoặc 2007 của nhà xuất bản „Ki thuat‟. Danh sách đưa ra sắp xếp theo chiều giảm dần của giá tiền.

5. Đưa ra danh sách các độc giả chưa mượn sách của nhà xuất bản „Thanh nien‟ lần nào.

6. Đưa ra danh sách các độc giả chưa mượn sách „Mang may tinh‟ lần nào.

7. Đưa ra danh sách các đầu sách chưa mượn độc giả công tác tại „CDSPND‟ mượn lần nào.

8. Đưa ra danh sách các đầu sách chưa được độc giả có trình độ „Cao dang‟ mượn lần nào.

9. Đưa ra các thông tin gồm mã độc giả, họ và tên độc giả, giới tính, ngày sinh, nơi công tác, số lượt mượn sách của mỗi độc giả có số lượt mượn >2.

10. Đưa ra các thông tin gồm mã sách, tên sách, họ và tên tác giả, nhà xuất bản, số lượt được mượn của mỗi đầu sách có số lượt mượn >2.


11. Đưa ra các thông tin gồm nhà xuất bản, số sách đã xuất bản mà có số sách đã xuất bản nhỏ hơn 5.

12. Đưa ra các thông tin gồm họ tên tác giả, số đầu sách đã được xuất bản mà có số đầu sách đã được xuất bản lơn hơn 3.

Câu 3: Hãy viết các Stored Procedure để thực hiện các công việc sau:

1. Đưa ra danh sách các đầu sách chưa được độc giả mượn lần nào với trình độ cho trước.

2. Đưa ra các thông tin gồm mã độc giả, họ và tên độc giả, giới tính, ngày sinh, nơi công tác, số lượt mượn sách của mỗi độc giả có số lượt cho trước.

3. Đưa ra các thông tin gồm mã sách, tên sách, họ và tên tác giả, nhà xuất bản, số lượt được mượn của mỗi đầu sách với nhà xuất bản cho trước.

4. Thêm bản ghi cho bảng độc giả (thủ tục phải thực hiện kiểm tra tính hợp lệ của dữ liệu cần bổ sung, không trùng khoá chính và đảm bảo toàn vẹn tham chiếu).

5. Thêm bản ghi cho bảng sách (thủ tục phải thực hiện kiểm tra tính hợp lệ của dữ liệu cần bổ sung, không trùng khoá chính và đảm bảo toàn vẹn tham chiếu), màu mặc định là trắng.

6. Thêm bản ghi cho bảng mượn trả (thủ tục phải thực hiện kiểm tra tính hợp lệ của dữ liệu cần bổ sung, không trùng khoá chính và đảm bảo toàn vẹn tham chiếu).

7. Xóa các đầu sách xuất bản trước năm 2000.

8. Tăng số lượng sách của mỗi cuốn sách lên x cuốn sách với x cho trước và mã sách cho trước.

Câu 4: Xây dựng hàm

1. Xây dựng một hàm tính tiền mượn sách. Biết rằng nếu giá tiền mượn mỗi quyển sách trong hạn là 1000 đồng/ ngày; nếu ngày mượn trùng với ngày trả thì tính là một ngày mượn; mỗi ngày mượn quá hạn thì tính thêm 500 đồng/ngày.

2. Xây dựng một hàm trả về một bảng gồm các thông tin: mã độc giả, họ và tên độc giả, giới tính, ngày sinh, mã sách, tên sách, nhà xuất bản, giá tiền phải trả của mỗi cuốn sách.

3. Xây dựng một hàm trả về một bảng gồm các thông tin sau: mã độc giả, họ và tên độc giả, giới tính, ngày sinh, số lượt mượn, tổng số tiền phải trả trong năm 2009.

4. Xây dựng một hàm trả về một bảng gồm các thông tin sau: mã độc giả, họ và tên độc giả, giới tính, ngày sinh, mã sách, tên sách, số lượt mượn của những độc giả đã mượn các cuốn sách quá hạn mà chưa trả.

Câu 5: Viết các Trigger

1. Tạo Trigger cho bảng độc giả theo yêu cầu sau:

Khi thêm mới một độc giả thì kiểm tra tính hợp lệ của dữ liệu cần bổ sung, không


trùng khoá chính và đảm bảo toàn vẹn tham chiếu.

Chỉ cho phép xóa 2 độc giả trở xuống.

Không cho phép cập nhật mã độc giả.

2. Tạo Trigger cho bảng sách theo yêu cầu sau:

Khi thêm mới một đầu sách thì kiểm tra tính hợp lệ của dữ liệu cần bổ sung, không trùng khoá chính và đảm bảo toàn vẹn tham chiếu.

Khi xóa bản ghi ở bảng sách thì bản ghi tương ứng ở bảng mượn trả cũng bị xóa.

Không cho phép cập nhật số lượng sách nhỏ hơn 0. Khi cập nhật mã sách thì mã sách trong bảng mượn trả cũng được cập nhật theo.

3. Tạo Trigger cho bảng mượn trả theo yêu cầu sau:

Khi thêm mới một bản ghi thì kiểm tra tính hợp lệ của dữ liệu cần bổ sung, không trùng khoá chính và đảm bảo toàn vẹn tham chiếu.

Chỉ cho phép xóa bản ghi mà có năm mượn trước năm 2004.

Khi cập nhật kiểm tra tính hợp lệ giữa ngày mượn, ngày trả, ngày hẹn trả.

Câu 6:Các thao tác trên cơ sở dữ liệu

1. Thiết lập cấu hình dịch vụ của SQL Server.

2. Tạo file sao lưu cho cơ sở dữ liệu trên với tên là „QLD_Backup‟ thuộc loại full backup, Transaction log và differential backup, khôi phục dữ liệu từ file sao lưu đã tạo.

3. Tách bỏ cơ sở dữ liệu khỏi SQL Server.

4. Xuất file cơ sở dữ liệu sang dạng Text, Access, Excel, SQL Server.

5. Tạo lịch trình sao lưu tự động cho cơ sở dữ liệu trên vào thứ 2 hàng tuần

6. Tạo lịch trình sao lưu tự động cho cơ sở dữ liệu trên vào tháng 2 hàng năm.

Câu 7:Quản lý bảo mật và người dùng

1. Tạo người dùng đăng nhập bằng tài khoản SQL Server, bằng tài khoản của Window.

2. Gắn các nhóm quyền cho người dùng.

3. Gắn các vai trò cho người dùng.

4. Cấp quyền sử dụng select, update, insert, delete trên bảng cho người dùng.

Bài số 6: Cho CSDL nhập xuất hàng (QLXNH) gồm các bảng sau:

Nhap(Mamh, TenMH, SLN, DGN, NGN): Chứa thông tin về các mặt hàng được nhập.

Xuat(Mamh, TenMH, SLX, DGX,NGX): Chứa thông tin về các mặt hàng được xuất.

TonK(Mamh, TenMH, SLTK): Chứa thông tin về các mặt hàng tồn kho.

Trong đó: Mamh-Mã mặt hàng, TenMH-Tên mặt hàng, SLN-Số lượng nhập, DGN-Đơn giá nhập, SLX-Số lượng xuất, DGX-Đơn giá xuất, SLTK-Số lượng tồn kho, NGN-Ngày nhập hàng, NGX-Ngày xuất hàng.

Xem tất cả 323 trang.

Ngày đăng: 16/07/2022
Trang chủ Tài liệu miễn phí