Tải bản đầy đủ (.ppt) (18 trang)

Bai giang mon CSDL 11 Khung nhin

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 (790.01 KB, 18 trang )

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

<i><b>LOGO</b></i>


<i></i>


<b>LỆNH TẠO KHUNG NHÌN</b>


Chương 3: NGƠN NGỮ SQL


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

<b>Nội dung</b>



Khảo bài


<b>1</b>


Khung nhìn - view


<b>2</b>


Định nghĩa khung nhìn


<b>3</b>


Truy vấn trên khung nhìn


<b>4</b>


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

<b>Câu hỏi khảo bài</b>



1. Với đề án có mã số 10, hãy thay đổi nơi thực
hiện đề án thành ‘Vung Tau’ và phòng ban phụ
trách là phòng 5.



<b></b>
3


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

<b>Câu hỏi khảo bài</b>



2. Tìm các nhân viên của phịng số 2 và 5.


SELECT *


FROM NHANVIEN


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

<b>Câu hỏi khảo bài</b>



3. Cho biết tên nhân viên có mức lương lớn hơn
lương của các nhân viên phòng số 5


<b></b>
5


04/19/21


SELECT *


FROM NHANVIEN


WHERE LUONG> ALL (


SELECT LUONG


FROM NHANVIEN



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

<b>Câu hỏi khảo bài</b>



4. Cho biết các nhân viên có tham gia dự án mà
phòng số 5 quản lý.


SELECT MANV


FROM THAMGIA



WHERE MADA NOT IN (


SELECT MANV


FROM DUAN



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

<b>I. Khung nhìn - View</b>



<b></b>


Bảng là một quan hệ được tổ chức lưu


trữ vật lý trong CSDL



Khung nhìn cũng là một quan hệ:



<i>1.Không được </i>

lưu trữ vật lý (bảng ảo)



2.Khơng chứa dữ liệu



3.Được định nghĩa từ những bảng khác


4.Có thể truy vấn hay cập nhật thơng



qua khung nhìn




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

<b>I. Khung nhìn - View</b>



Tại sao phải sử dụng khung nhìn:



1.Che dấu tính phức tạp của dữ liệu


2.Đơn giản hóa các câu truy vấn



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

<b>II. Định nghĩa khung nhìn</b>


<b></b>
9
04/19/21
<b>Cú pháp</b>
<b>Bảng ảo </b>
<b>này có</b>


1. Danh sách thuộc tính trùng với các thuộc tính
trong mệnh đề <b>SELECT</b>


2. Số dòng phụ thuộc vào điều kiện ở mệnh đề


<b>WHERE</b>


3. Dữ liệu được lấy từ các bảng ở mệnh đề <b>FROM</b>
1. Danh sách thuộc tính trùng với các thuộc tính


trong mệnh đề <b>SELECT</b>


2. Số dòng phụ thuộc vào điều kiện ở mệnh đề



<b>WHERE</b>


3. Dữ liệu được lấy từ các bảng ở mệnh đề <b>FROM</b>


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

<b>II. Định nghĩa khung nhìn</b>



<sub>Ví dụ 1:</sub>


 <sub>Tạo khung nhìn là danh sách các nhân viên của </sub>


phòng nghiên cứu (NC)


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

<b>II. Định nghĩa khung nhìn</b>



<sub>Ví dụ 2:</sub>


 <sub>Tạo khung nhìn là danh sách slượng nv, tổng </sub>


lương của từng phòng ban


<b></b>
11


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

<b>III. Truy vấn trên khung nhìn</b>



<sub>Tuy khơng chứa dữ liệu nhưng có thể thực hiện </sub>


các câu truy vấn trên khung nhìn.
 <sub>SELECT</sub> <sub>TENNV</sub>



 <sub>FROM</sub> <sub>NV_P5</sub>


 <sub>WHERE</sub> <sub>HONV </sub><sub>LIKE</sub><sub> ‘NGUYEN%’</sub>


<sub>Có thể viết câu truy vấn dữ liệu từ khung nhìn và </sub>


bảng.


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

<b>III. Truy vấn trên khung nhìn</b>



<b></b>


<b>XĨA VIEW</b>


<b>Sửa nội dung bảng ảo</b>


<b>DROP VIEW</b>


<b>UPDATE VIEW</b>


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

<b>Sử dụng cêu lệnh SQL viết các truy vấn sau</b>


1. Hiển thị TENNV, NG_NGHIEP, LUONG * 12, MAP


trong bảng NHANVIEN và sắp xếp theo TENNV
(mặc định sắp xếp tăng dần).


2. Hiển thị MAP, NG_NGHIEP, TENNV, LUONG từ


bảng dữ liệu NHANVIEN mà LUONG có giá trị


nằm trong khoảng 1000 đến 2000


3. Hiển thị MAP, NG_NGHIEP, TENNV, LUONG từ
bảng dữ liệu NHANVIEN mà LUONG lớn hơn
1500 và có NG_NGHIEP là Cơng nhân hay Kỹ sư.


<b></b>
15


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

<b>Bảng ~ quan hệ</b>
<b>Bảng ~ quan hệ</b>


Cột ~ thuộc tính
Cột ~ thuộc tính


<b>Dịng ~ bộ</b>
<b>Dịng ~ bộ</b>


<b>SQL</b>


<b>SQL sử dụng thuật ngữ:</b>


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

CREATE TABLE (tạo bảng)


ALTER TABLE (sửa bảng)


DROP TABLE (xóa bảng)


EXEC sp_addtype (tạo miền
giá trị)


<b>Lược đồ </b>
<b>Lược đồ </b>
<b>cho mỗi </b>
<b>cho mỗi </b>
<b>quan hệ</b>
<b>quan hệ</b>
<b>Chỉ mục </b>
<b>Chỉ mục </b>
<b>trên mỗi </b>
<b>trên mỗi </b>
<b>quan hệ</b>
<b>quan hệ</b>
Ràng buộc
toàn vẹn


Miền giá trị
tương ứng của


từng thuộc tính <b>ngữ mơ tảLà ngơn </b>


</div>
<span class='text_page_counter'>(18)</span><div class='page_container' data-page=18></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
×