1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Hệ quản trị cơ sở dữ liệu: Lập trình trên SQL Server - TS. Lại Hiền Phương (Phần 3)

40 24 0

Đ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

Định dạng
Số trang 40
Dung lượng 884,42 KB

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

Nội dung

Phần 3 bài giảng Hệ quản trị cơ sở dữ liệu: Lập trình trên SQL Server cung cấp cho người học các kiến thức: Cấu trúc điều khiển trong T-SQL, cú pháp searched CASE, cấu trúc WHILE, các toán tử đặc biệt,... Mời các bạn cùng tham khảo.

Trang 1

Lập trình trên SQL Server

LẠI HIỀN PHƯƠNG

EMAIL: LHPHUONG@TLU.EDU.VN

Trang 2

Cấu trúc điều khiển trong T-SQL

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 2

Trang 3

END

Trang 4

Ví dụ cấu trúc IF … ELSE

Ví dụ: Từ bảng SinhVien và bảng KetQua, tính

điểm trung bình của ‘Nguyễn Văn A’ và hiển thị

‘Đạt’ nếu điểm trung bình lớn hơn hoặc bằng 3.5

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 4

Trang 5

Ví dụ cấu trúc IF … ELSE

Các cấu trúc IF … ELSE có thể lồng nhau

Trang 6

Cấu trúc lựa chọn CASE

CASE trong SQL dùng để đánh giá một danh sách

các điều kiện và trả về 1 trong các biểu thức kết

quả thỏa mãn điều kiện đánh giá

CASE có 2 định dạng:

CASE đơn giản (Simple CASE): so sánh một biểu thức vớimột bộ các biểu thức đơn giản để xác định kết quả

CASE tìm kiếm (Searched CASE): đánh giá một bộ các

biểu thức Boolean để xác định kết quả

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 6

Trang 7

Cú pháp Simple CASE

Trang 8

Ví dụ Simple CASE

Ví dụ: hiện ra màn hình tên tháng hiện tại

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 8

Trang 9

Cú pháp Searched CASE

Trang 10

Ví dụ: Searched CASE

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 10

Ví dụ: Viết lại ví dụ xếp loại SV Nguyễn Văn A

Trang 11

Khối lệnh 2 [CONTINUE]

Khối lệnh 3

END

BREAK: thoát khỏi vòng lặpWHILE, tất cả các lệnh sau từkhóa BREAK và trước từ khóaEND sẽ bị bỏ qua

CONTINUE: bỏ qua các câulệnh sau từ khóa CONTINUE vàtrước từ khóa END để nhảy đếnvòng lặp tiếp theo của vòng lặpWHILE

Trang 12

Ví dụ cấu trúc WHILE

Ví dụ: Hiển thị các số từ 1 đến 9

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 12

Trang 13

EXISTS Tồn tại EXISTS ( SELECT Diem from KETQUA)

IN Kiểm tra xem một giá trị có

tồn tại trong một tập cho trước không

@GT in (N'Nam', N'Nữ')

Trang 14

Ví dụ các toán tử đặc biệt

Ví dụ: Truy vấn hiển thị MaSV, HoTen, KetQua của tất cả các sinh

viên trong bảng SinhVien với KetQua = ‘Còn nợ môn’ với sinh viên có môn thi chưa đạt và ‘Đã qua hết’ với sinh viên đã qua hết các môn

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 14

Trang 15

Ví dụ các toán tử đặc biệt

Ví dụ: cách khác dùng ALL

Trang 16

Ví dụ các toán tử đặc biệt

Ví dụ: cách khác dùng ANY

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 16

Trang 17

Ví dụ các toán tử đặc biệt

Ví dụ: cách khác dùng IN

Trang 18

Sử dụng biến kiểu dữ liệu

Cursor

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 18

Trang 19

Khái niệm về cursor

Các lệnh của SQL Server làm việc trên một nhóm nhiềubản ghi

Cursor là cấu trúc giúp làm việc với từng bản ghi tại mộtthời điểm

 Khai báo cursor như một câu lệnh SELECT

Có thể di chuyển giữa các bản ghi trong cursor để làm việc

Có thể dùng cursor để cập nhật dữ liệu

Trang 20

Các bước sử dụng kiểu dữ liệu cursor

Định nghĩa biến kiểu cursor bằng lệnh DECLARE

Sử dụng lệnh OPEN để mở ra cursor đã định nghĩa trướcđó

Đọc và xử lý trên từng dòng lệnh bên trong cursor

Đóng cursor lại bằng lệnh CLOSE và DEALLOCATE

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 20

Trang 21

Định nghĩa biến kiểu Cursor

Cú pháp:

Trang 23

Phương pháp di chuyển trong Cursor

FORWARD_ONLY: duyệt các bản ghi từ đầu đến cuối, theochiều đi tới

SCROLL: cursor được phép di chuyển tới lui, qua lại các

dòng bản ghi trong cursor

Trang 24

Kiểu cursor

STATIC (cursor tĩnh) : khi có sự thay đổi bên dưới dữ liệugốc thì các thay đổi đó không được cập nhật tự động trong

dữ liệu của cursor

DYNAMIC (cursor động): khi có sự thay đổi bên dưới dữ

liệu gốc thì các thay đổi đó được cập nhật tự động trong

dữ liệu của cursor

KEYSET: gần giống DYNAMIC Những thay đổi trên cột

không là khóa chính trong bảng gốc sẽ tự đọng cập nhật

trong dữ liệu cursor Tuy nhiên, những mẩu tin vừa thêmmới hoặc vừa hủy bỏ sẽ không hiển thị trong dữ liệu cursor

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 24

Trang 25

Các tùy chọn khác

READ_ONLY : không thể cập nhật dữ liệu

SCROLL_LOCK: Chỉ định SQL_SERVER khóa các mẩu tin cần thay đổi

giá trị hoặc bị hủy bỏ bên trong bảng gốc nhằm đảm bảo hành động cập nhật luôn thành công

 Câu lệnh SQL: chỉ định danh sách các cột sẽ được truy cập bởi

cursor

 UPDATE [OF Danh sách cột cần cập nhật]:

 nếu được chỉ định thì chỉ những cột trong danh sách được sửa

 nếu không được chỉ định thì tất cả các cột được sửa trừ khi con trỏ kiểu READ_ONLY

Trang 26

Ví dụ: định nghĩa biến cursor

Ví dụ: khai báo con trỏ gắn với các bản ghi của bảngSinhVien

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 26

Trang 27

Mở Cursor

Cú pháp:

OPEN Tên_con_trỏ

 Ví dụ:

Trang 28

Đọc và xử lý từng dòng lệnh FETCH

Cú pháp:

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 28

Trang 29

Kiểm tra việc đọc dữ liệu

Trang 30

Đọc và xử lý từng dòng lệnh FETCH

Ví dụ: Đếm số sinh viên

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 30

Trang 32

Ví dụ: đầy đủ các bước với cursor

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 32

Trang 33

Ví dụ: sử dụng cursor hiển thị danh

sách MaSV, HoTen, GioiTinh

Trang 34

Xử lý lỗi

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 34

Trang 35

Khối lệnh TRY … CATCH

Ý nghĩa : Thực hiện các lệnh trong khối TRY, nếu gặp lỗi sẽchuyển qua xử lý bằng các lệnh trong khối CATCH

Cú pháp:

Trang 36

Khối lệnh TRY … CATCH

Trang 37

Khối lệnh TRY … CATCH

Ví dụ :

Trả về

Trang 38

Mộ số hàm ERROR thường dùng

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 38

Trang 39

 Chuỗi thông báo lỗi bất kỳ

 Mã thông báo lỗi do người dùng định nghĩa trước bằng sp_addmessage và được lưu trong sys.messages Giá trị phải > 50000

 Mức_độ: số có giá trị từ 0 đến 25 thể hiện mức độ nghiêm trọng

Trang 40

Thủ tục RAISERROR (Ví dụ)

LẠI HIỀN PHƯƠNG - HỆ QUẢN TRỊ CSDL 40

Ngày đăng: 26/10/2020, 15:31

HÌNH ẢNH LIÊN QUAN

Ví dụ: Từ bảng SinhVien và bảng KetQua, tính - Bài giảng Hệ quản trị cơ sở dữ liệu: Lập trình trên SQL Server - TS. Lại Hiền Phương (Phần 3)
d ụ: Từ bảng SinhVien và bảng KetQua, tính (Trang 4)
Ví dụ: hiện ra màn hình tên tháng hiện tại - Bài giảng Hệ quản trị cơ sở dữ liệu: Lập trình trên SQL Server - TS. Lại Hiền Phương (Phần 3)
d ụ: hiện ra màn hình tên tháng hiện tại (Trang 8)
Ví dụ: khai báo con trỏ gắn với các bản ghi của bảng SinhVien - Bài giảng Hệ quản trị cơ sở dữ liệu: Lập trình trên SQL Server - TS. Lại Hiền Phương (Phần 3)
d ụ: khai báo con trỏ gắn với các bản ghi của bảng SinhVien (Trang 26)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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