1. Trang chủ
  2. » Giáo án - Bài giảng

THUC HANH MODULE

28 218 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Hướng thực hành
Thể loại Hướng dẫn thực hành
Định dạng
Số trang 28
Dung lượng 1,12 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

 Bảng NHACUNGCAP lưu trữ dữ liệu về các đối tác cung cấp hàng cho công ty  Bảng MATHANG lưu trữ các dữ liệu về các mặt hàng hiện có trong công ty  Bảng LOAIHANG phân loại các mặt hàng

Trang 1

Hướng Dẫn Thực Hành

Hướng dẫn:

• Bài tập thực hành được chia làm nhiều Module

• Mỗi Module được thiết kế cho thời lượng là 3 tiết thực hành tại lớp với

sự hướng dẫn của giảng viên.

• Tùy theo số tiết phân bổ, mỗi tuần học có thể thực hiện nhiều Module.

• Sinh viên phải làm tất cả các bài tập trong các Module ở tuần tương ứng Những sinh viên chưa hoànn tất phần bài tập tại lớp có trách nhiệm tự làm tiếp tục ở nhà.

Trang 2

Module 1

Nội dung kiến thức thực hành:

+Thực hành ngôn ngữ SQL:

- ngôn ngữ định nghĩa dữ liệu: CREATE TABLE

- ngôn ngữ thao tác dữ liệu: INSERT, UPDATE, DELETE

+Thông qua việc cài đặt cơ sở dữ liệu trên DBMS,SV hiểu rõ hơn về mô hình ER, mô hình quan hệ

SINHVIEN

HoTen Masv Nam Khoa

DIEUKIEN

Mamh Mamh_truo c

Trang 3

MASV INT PRIMARY KEY,

NAM INT NOT NULL, KHOA VARCHAR(10) NOT NULL )

Bài 3:

Mục đích:

Thực hiện lệnh Alter Table add constraint để kiểm tra các ràng buộc về

khóa chính, khóa ngoại (nếu chưa cài đặt ở Bài 2) và các ràng buộc về dữ liệu được mô tả bên dưới.

Ví dụ 1: ràng buộc khóa ngoại cho bảng DIEUKIEN

Alter table DIEUKIEN

add constraint fk_dkien foreign key(MAMH) references MONHOC(MAMH)

Ví dụ 2: ràng buộc về Diem cho bảng KETQUA

Alter table KETQUA

add constraint ck_kqua check(DIEM>=0 and DIEM<=10)

ALTER TABLE SINHVIEN

ADD CONSTRAINT KC_SINHVIEN PRIMARY KEY (MASV)

ALTER TABLE SINHVIEN

ADD CONSTRAINT NAM_RB

CHECK (NAM >=1 AND NAM<=5)

Trang 4

ALTER TABLE MONHOC

ADD CONSTRAINT KC_MONHOC PRIMARY KEY(MAMH)

Table DieuKien

CREATE TABLE DIEUKIEN

(

MAMH CHAR(8) NOT NULL,

MAMH_TRUOC CHAR(8) NOT NULL

)

ALTER TABLE DIEUKIEN

ADD CONSTRAINT KC_DIEUKIEN PRIMARY KEY(MAMH,MAMH_TRUOC)

ALTER TABLE DIEUKIEN

ADD CONSTRAINT KN_DIEUKIEN FOREIGN KEY(MAMH)

REFERENCES MONHOC(MAMH)

Table KhoaHoc

CREATE TABLE KHOAHOC

(

MAKH INT NOT NULL,

MAMH CHAR(8) NOT NULL,

HOCKY INT,

GIAOVIEN CHAR(10)

)

ALTER TABLE KHOAHOC

ADD CONSTRAINT KC_KHOAHOC PRIMARY KEY(MAKH)

ALTER TABLE KHOAHOC

ADD CONSTRAINT KN_KHOAHOC FOREIGN KEY(MAMH)

REFERENCES MONHOC(MAMH)

Bang KetQua

CREATE TABLE KETQUA

(

MASV CHAR(7) NOT NULL,

MAKH INT NOT NULL,

DIEM INT

)

ALTER TABLE KETQUA

ADD CONSTRAINT KC_KETQUA PRIMARY KEY(MASV, MAKH)

ALTER TABLE KETQUA

ADD CONSTRAINT KN_KETQUA FOREIGN KEY(MASV)

REFERENCES SINHVIEN(MASV)

ALTER TABLE KETQUA

ADD CONSTRAINT KN2_KETQUA FOREIGN KEY(MAKH)

Trang 5

Module 2

Nội dung kiến thức thực hành:

+Ngôn ngữ thao tác dữ liệu: INSERT, UPDATE, DELETE, SELECT

Toán rời rạc MATH2410 3 TOAN

Cấu trúc dữ liệu COSC3320 4 CNTT

Cơ sở dữ liệu COSC3380 3 CNTT

DIEUKIEN

MaMH MaMH_truo

c COSC3380 COSC3320

Trang 6

2 Xem dữ liệu của bảng SINHVIEN:

SELECT * FROM SINHVIEN

Trang 7

Module 3

Nội dung kiến thức thực hành:

+Ngôn ngữ định nghĩa và thao tác dữ liệu: SELECT

 Bảng NHACUNGCAP lưu trữ dữ liệu về các đối tác cung cấp hàng cho công ty

 Bảng MATHANG lưu trữ các dữ liệu về các mặt hàng hiện có trong công ty

 Bảng LOAIHANG phân loại các mặt hàng hiện có

 Bảng NHANVIEN lưu trữ thông tin về các nhân viên làm việc trong công ty

 Bảng KHACHANG lưu trữ thông tin các khách hàng của công ty

 Khách hàng đặt hàng thông qua các đơn đặt hàng(DONDATHANG) Mỗi đơn đặt hàng phải do một nhân viên nào đó lập và do đó phải có quan hệ với bảng NHANVIEN

 Thông tin chi tiết của các đơn đặt hàng được lưu trữ trong bảng chi tiết đơn đặt hàng Bảng này có quan hệ với hai bảng DONDATHANG và MAHANG

Trang 8

1 Sinh viên hãy xây dựng cơ sở dữ liệu trên bằng lệnh định nghĩa dữ liệu

(CREATE TABLE) với các ràng buộc khĩa chính, khĩa ngoại Lưu ý: sinh viên

xem dữ liệu mẫu bên dưới để chọn kiểu dữ liệu cho phù hợp.

2 Sinh viên nhập liệu cho các bảng theo dữ liệu sau.

Lưu ý: những cột để trống sinh viên tự cho dữ liệu.

Table KHÁCH HÀNG

CINOTEC ĐIỆN TOÁN SÀI GÒN 43 Yết kiêu P 6 Q3 ( )7931752

COMECO VẬT TƯ THIẾT BỊ GTVT 226 Thuận Kiều Q11 ( )8456781

FAHASA PHÁT HÀNH SÁCH SÀI GÒN 12 Thuận kiều Q5 ( )8452792

FISC DỊCH VỤ ĐẦU TƯ NƯỚC NGOÀI 31 Trương Định P6 Q1

HUNSAN HỪNG SÁNG 175 Lý Thường Kiệt ( )5465487

LIXCO BỘT GIẶT LIX 79 Bàn Cờ P3 Q5 ( )8952187

SAFICO THUỶ SẢN XUẤT KHẨU 47 Bải sậy P1 Q11

SJC VÀNG BẠC ĐÁ QUÝ TPHCM 350 CMT8 P12 Q3 ( )8543543

TAFACO THƯƠNG MẠI TẤN PHÁT 4 Trần PhũP Q5 ( )8754875

THADACO XÂY DỰNG THÀNH ĐẠT 6E An Bình Q5 ( )5465454

TRACODI ĐẦU TƯ PHÁT TRIỂN GTVT 343 Nhật Tảo Q10 ( )5321321

TRANACO DỊCH VỤ VẬN TẢI Q 3 156 Lê Đại HànhP7 Q10 ( )8654635

VIETTIEN CTY DỆT MAY VIỆT TIẾN 24 KhuA – CN Tân Tạo ( )4565670

Table NHÂNVIÊN

NV HỌ NV TÊN NV

NGÀY SINH

NGÀY LÀM VIỆC ĐỊA CHỈ

ĐIỆN THOẠI LCB

PHỤ CẤP

1 NGUYỄN LỆ NGA 10/12/64 10/12/94 13Hùng Vương P4 Q5 ( )5465465

2 HÀ VĨNH PHÁT 07/12/79 02/03/02 89 Đồng Khởi Q1 ( )8767461

3 TRẦN TUYẾT OANH 27/02/67 30/10/97 45Lê Quí Đôn Q3 ( )5465465

4 NGUYỄN KIM NGỌC 25/12/80 10/12/07 187 Hậu Giang P5Q6 ( )5654654

5 TRƯƠNG DUY HÙNG 10/10/82 10/11/07 77 Trương ĐịnhQ1 ( )5871544

6 LƯƠNG BÁ THẮNG 10/12/68 06/03/98 92 Lê ThánhTônQ1 ( )8754165

7 LÂM SƠN HOÀNG 02/03/78 10/10/01 45 Ký Con Q1 ( )8231231

8 NGUYỄN MINH HỒNG 30/10/68 30/10/98 22 Lạc Long Quân Q10 ( )7845138

Trang 9

Table NHÂNVIÊN

NV HỌ NV TÊN NV

NGÀY SINH

NGÀY LÀM VIỆC ĐỊA CHỈ

ĐIỆN THOẠI LCB

PHỤ CẤP

9 VƯƠNG NGỌC LAN 10/12/67 10/12/97 227 Hai Bà Trưng Q1 ( )7784184

10 NGUYỄ THỊ MAI 10/11/67 10/11/97 12Nguỹên Chí Thanh Q3 ( )3451365

11 LÊ VĂN HÙNG 06/03/57 06/03/90 56Nguyễn TrãiQ1 ( )5745785

12 NGUYỄN THỊ HOA 10/10/66 10/10/96 12Nguyễn Trãi Q1 ( )6465465

Table DONDATHANG

HĐ MÃ KH MÃ NV NGÀY ĐH NGÀY GN HÀNG

NGÀY CHUYỂN HÀNG

NƠI GIAO HÀNG

Trang 10

NƠI GIAO HÀNG

MAHANG TENHANG CTY MÃ LHANG MÃ SL TỒN ĐVỊ TÍNH ĐƠN GIÁ

1 RƯỢU DOM BK 4 CHAI 230.50

2 GIA VỊ HEC TP 2 THÙNG 40.00

3 BÁNH KEM HEC BK 15 CÁI 2.00

5 BÁNH MÌ HEC BK 20 CÁI 1.00

6 NEM DOM TP 20 KG 10.00

7 TÁO DOM TC 28 KG 5.00

8 CÁ HỘP HEC TP 5 THÙNG 62.50

9 KẸO DOM BK 10 THÙNG 12.00

10 GẠO DOM TP 50 KG 2.00

11 NẾP DOM TP 60 KG 3.00

12 ÁO SƠ MI VIETTIEN AQ 12 CÁI 50

Trang 11

Lan Hà HECCO 12 Nguyễn Thái Sơn 4554678

Trang 12

Table CHITIETDATHANG

MÃ HĐ MÃ HÀNG ĐƠN GIÁ SỐ LƯỢNG

MỨC GIẢM GIÁ

Trang 14

Module 4

Nội dung kiến thức thực hành:

+Ngôn ngữ định nghĩa và thao tác dữ liệu: SELECT với các hàm tính toán, gộp nhóm, SELECT lồng nhau.

Sinh viên dùng lệnh SELECT thực hiện các truy vấn sau:

1 Mã hàng, tên hàng và số lượng của các mặt hàng hiện có trong công ty

3 Địa chỉ và điện thoại của nhà cung cấp có tên giao dịch VIETEC là gi?

SELECT DIACHI, DIENTHOAI

WHERE DONGIA>50 AND SOLUONG<50

5 Cho biết mỗi mặt hàng trong công ty do ai cung cấp

FROM LOAIHANG,MATHANG,NHACUNGCAP

WHERE LOAIHANG.MALOAIHANG=MATHANG.MALOAIHANG

AND MATHANG.MACONGTY=NHACUNGCAP.MACONGTYAND LOAIHANG.MALOAIHANG='TP'

7 Những khách hàng nào (tên giao dịch) đã đặt mua mặt hàng Sữa hộp của công ty?

SELECT KHACHHANG.TENCONGTY,MATHANG.TENHANG

FROM

Trang 15

AND TENHANG='CA HOP'

8 Đơn đặt hàng số 1 do ai đặt và do nhân viên nào lập, thời gian và địa điểm giao hàng là

Sinh viên dùng lệnh DELETE để thực hiện các yêu cầu sau:

10 Xóa những nhân viên đã làm việc trong công ty quá 30 năm

DELETE FROM NHANVIEN

WHERE ( 2010-Year(ngaylamviec))>30

CÁCH KHÁC:

DELETE FROM NHANVIEN

WHERE (YEAR (GETDATE())-YEAR(NGAYLAMVIEC))>30

11 Xóa khỏi bảng khách hàng hiện không có đơn đặt hàng nào

DELETE FROM khachhang

WHERE makh in (select makh,count(sohd)

FROM khachhang inner join dondathang

on khachhang.makh=dondathang.makh

group by makh

having count(sohd)=0)

Trang 16

Module 5

+ Nội dung kiến thức thực hành:

+Quản lý tài khoản cho người sử dụng

sp_helpsrvrolemember: liệt kê danh sách tài khoản đã gán nhóm quyền

sp_helpsrvrole : liệt kê danh sách nhóm quyền SQL Server 2008

sp_srvrolepermission

1 Tạo tài khoản từ hệ điều hành Windows(Windows Authentication)

Nếu chọn đặt Windows authentication thì tài khoản khai báo phải tồn tại trong hệ điều hành

Trong hệ điều hành Windows, tạo tài khoản tên QUANGHIEP

Để tạo mới tài khoản trong hệ điều hành Windows chọn vào Start \ Setting \ Control Panel \ Performance and Maintenance\ Administrative Tools\ Computer Management\ System Tools\ Local Users and Groups và right click User\ New User

Khai báo tài khoản mới trong SQL Server 2005 bằng cách chọn vào Security \ Login \ Right Click \ New Login

Trang 17

Chọn vào nút Search

Trang 18

Cửa sổ kế tiếp xuất hiện

Nhấn vào nút Advanced, tiếp tục nhấn nút Find Now, danh sách tài khoản của hệ điều hành liệt kê như hình:

Chọn vào tài khoản QUANGHIEP rồi nhấn nút OK

Nhấn nút OK, tài khoản trong cửa sổ tên sẽ khai báo trong phần login name

2 Tạo tài khoản trong SQL Server (SQL Server Authentication)

Tạo tài khoản của SQL Server 2005, chọn Security\ right click Login\ New Login

Trang 19

(Bỏ chọn User must change password at next login, nếu không sẽ gây ra lỗi)

3 Sinh viên tự tạo 10 tài khoản

4 Server Roles

Gán quyền cho tài khoản vừa tạo

Security\ Login \ right click thuysoftware ( tài khoản vừa tạo) \ Properties \ Select a

page \ Server Role

Trang 20

Gán quyền cho tài khoản thuysoftware

5 Trạng thái của tài khoản

Để ngăn cấm tài khoản thuysoftware đăng nhập vào Database Engine của SQL Server

2005 thì chọn Security\ Login \ right click thuysoftware ( tài khoản vừa tạo) \ Properties \

Select a page \ Status rồi chọn Deny trong Pemission to connect to database engine

Trang 21

6 Sinh viên cấp quyền cho 10 tài khoản vừa tạo.

7 Tài khoản của người sử dụng trên cơ sở dữ liệu

Tạo thư mục SQLData trong đĩa F:\

Tạo cơ sở dữ liệu :

CREATE DATABASE SmallWorks ON PRIMARY

Trang 22

CREATE TABLE dbo Person (

PersonID int NOT NULL,

FirstName varchar ( 50 )NOT NULL,

MiddleName varchar ( 50 )NULL,

LastName varchar ( 50 )NOT NULL,

EmailAddress nvarchar ( 50 )NULL )

CREATE TABLE dbo Product (

ProductID int NOT NULL

ProductName varchar ( 75 ) NOT NULL

ProductNumber nvarchar ( 25 )NOT NULL

StandardCost money NOT NULL

ListPrice money NOT NULL )

7.1 Cách 1

Cấp quyền truy cập cơ sở dữ liệu SmallWorks cho tài khoản thuysoftware: chọn

Security\ Login \ right click thuysoftware ( tài khoản vừa tạo) \ Properties \ Select a

page \ User Mapping

Trang 23

Tài khoản thuysoftware nằm trong danh sách người sử dụng của cơ sở dữ liệu SmallWorks.

Trang 24

7.2 Cách 2

Khai báo tài khoản truy cập vào cơ sở dữ liệu SmallWorks

Chọn cơ sở dữ liệu SmallWorks \ Security \ right click Users \ New User

Xuất hiện hộp thoại Database User , gõ tên của user name

Chọn button , chọn tiếp Browse và chọn một tài khoản có quyền truy cập cơ sở

dữ liệu này

Trang 25

nhấn chọn OK

8 Sinh viên tự tạo 2 cơ sở dữ liệu và gán quyền truy cập cho 10 tài khoản vừa tạo

Trang 26

Module 6

+ Nội dung kiến thức thực hành:

+ Tạo CSDL Quản Lý Bán Sữa.

+ Quản lý tài khoản cho người sử dụng

+ Cấp quyền truy cập CSDL Quản Lý Bán Sữa

CSDL Quản Lý Bán Sữa:

HangSua(MaHangSua,TenHangSua,DiaChi,DienThoai,Email)

LoaiSua(MaLoaiSua,TenLoai)

Sua(MaSua,TenSua,MaHangSua,MaLoaiSua,TrongLuong,DonGia,TP_ddinhduong,Loiich)KhachHang(MaKH,TenKH,Phai,DiaChi,DienThoai,Email)

HoaDon(SoHoaDon,NgayHD,MaKH,Trigia)

CT_HoaDon(SoHD,MaSua,SoLuong,Dongia)

1 Sinh viên hãy xây dựng cơ sở dữ liệu trên bằng lệnh định nghĩa dữ liệu (CREATE TABLE) với các ràng buộc khóa chính, khóa ngoại

2 Sinh viên nhập liệu cho các bảng

3 Sinh viên dùng lệnh SELECT thực hiện các truy vấn sau:

a Liệt kê danh sách các sữa của hãng Abbott có tên sữa, trọng lượng, lợi ích trong đó trọng lượng sắp tăng dần

SELECT TENSUA,TRONGLUONG,LOIICH FROM SUA, HANGSUA

ORDER BY TRONGLUONGLIMIT 0,3

Trang 27

c Cho biết giá trị TB của các hóa đơn được làm tròn đến hàng nghìn.

SELECT ROUND(AVG(SOLUONG*DONGIA),-3) AS GIATRITB

FROM CT_HOADON c, HOADON h, SUA s

WHERE c.SOHD=h.SOHOADON AND s.MASUA=C.MASUA

AND MONTH(NGAYHD)=9 and year(NGAYHD)=2007

g Thống kê tổng số sản phẩm theo hãng sữa, gồm các thong tin: tên hãng sữa, tổng số sản phẩm Sắp xếp tăng dựa theo tổng số sản phẩm

SELECT TENHANGSUA, COUNT(*) AS TONGSO SP

FROM SUA, HANGSUA

WHERE SUA.MAHANGSUA=HANGSUA.MAHANGSUA

GROUP BY TENHANGSUA

ORDER BY COUNT(*)

Trang 28

h Thống kê số sản phẩm bán được trong tháng 9 năm 2009 của mỗi sữa.

SELECT MASUA, SUM(SOLUONG) AS SOSPFROM CT_HOADON c, HOADON h

WHERE c.SoHD=h.SoHD AND month(NgayHD)=9 and Year(NgayHD)=2009GROUP BY MaSua

i Hãy tìm những hóa đơn mua hàng có tổng trị giá lớn hơn 2.000.000 VNĐ

SELECT SOHD, SUM(SOLUONG*DONGIA) AS TONGTRIGIAFROM CT_HOADON

GROUP BY SOHDHAVING SUM(SOLUONG*DONGIA) > 2000000

j Liệt kê các khách hàng chưa mua hàng

SELECT *FROM KHACHHANGWHERE MAKH NOT IN ( SELECT MAKHACHHANG

Ngày đăng: 19/10/2013, 03:11

Xem thêm

HÌNH ẢNH LIÊN QUAN

Thực hiện lệnh INSERT để đưa dữ liệu vào các bảng. - THUC HANH MODULE
h ực hiện lệnh INSERT để đưa dữ liệu vào các bảng (Trang 5)
 Bảng NHACUNGCAP lưu trữ dữ liệu về các đối tác cung cấp hàng cho cơng ty Bảng MATHANG lưu trữ các dữ liệu về các mặt hàng hiện cĩ trong cơng ty  Bảng LOAIHANG phân loại các mặt hàng hiện cĩ - THUC HANH MODULE
ng NHACUNGCAP lưu trữ dữ liệu về các đối tác cung cấp hàng cho cơng ty Bảng MATHANG lưu trữ các dữ liệu về các mặt hàng hiện cĩ trong cơng ty  Bảng LOAIHANG phân loại các mặt hàng hiện cĩ (Trang 7)
1. Sinh viên hãy xây dựng cơ sở dữ liệu trên bằng lệnh định nghĩa dữ liệu - THUC HANH MODULE
1. Sinh viên hãy xây dựng cơ sở dữ liệu trên bằng lệnh định nghĩa dữ liệu (Trang 8)
2. Sinh viên nhập liệu cho các bảng theo dữ liệu sau.  Lưu ý: những cột để trống sinh viên tự cho dữ liệu - THUC HANH MODULE
2. Sinh viên nhập liệu cho các bảng theo dữ liệu sau. Lưu ý: những cột để trống sinh viên tự cho dữ liệu (Trang 8)

🧩 Sản phẩm bạn có thể quan tâm

w