9/5/2016<br />
<br />
CƠ SỞ DỮ LIỆU<br />
<br />
Cơ sở dữ liệu – Tổng quan hệ thống cơ sở dữ liệu<br />
<br />
MÃ KỊCH BẢN, HÀM VÀ THỦ TỤC<br />
<br />
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn<br />
<br />
Cơ sở dữ liệu – Tổng quan hệ thống cơ sở dữ liệu<br />
<br />
MÃ KỊCH BẢN<br />
Mã kịch bản<br />
Nhóm câu lệnh 1<br />
Các câu lệnh<br />
SQL riêng lẻ<br />
…<br />
…<br />
…<br />
…<br />
…<br />
<br />
GO<br />
Gom thành các<br />
nhóm lệnh (batch)<br />
<br />
…<br />
<br />
Nhóm câu lệnh n<br />
GO<br />
Mỗi nhóm câu lệnh kết<br />
thúc bởi lệnh GO<br />
<br />
Mỗi nhóm câu lệnh<br />
được biên dịch như<br />
một lệnh đơn<br />
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn<br />
<br />
1<br />
<br />
9/5/2016<br />
<br />
Cơ sở dữ liệu – Tổng quan hệ thống cơ sở dữ liệu<br />
<br />
MÃ KỊCH BẢN<br />
Các câu lệnh xử lý mã kịch bản<br />
Từ khóa<br />
<br />
Mô tả<br />
<br />
USE<br />
<br />
Thay đổi cơ sở dữ liệu hiện thời thành cơ sở dữ<br />
liệu được chỉ định trong câu lệnh<br />
<br />
PRINT<br />
<br />
Trả về thông báo tới client<br />
<br />
DECLARE<br />
<br />
Định nghĩa biến cục bộ<br />
<br />
SET<br />
EXEC<br />
<br />
Gán giá trị cho biến cục bộ hoặc biến theo phiên<br />
làm việc<br />
Thực thi câu lệnh SQL hoặc stored procedure<br />
động<br />
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn<br />
<br />
Cơ sở dữ liệu – Tổng quan hệ thống cơ sở dữ liệu<br />
<br />
MÃ KỊCH BẢN<br />
Các câu lệnh điều khiển luồng thực thi<br />
Từ khóa<br />
<br />
Mô tả<br />
<br />
IF…ELSE<br />
<br />
Điều khiển luồng thực thi dựa vào điều kiện<br />
<br />
BEGIN…END<br />
<br />
Định nghĩa khối câu lệnh<br />
<br />
WHILE<br />
<br />
Lặp lại các câu lệnh chừng nào điều kiện được chỉ<br />
định là đúng<br />
<br />
BREAK<br />
<br />
Thoát khỏi vòng lặp WHILE trong cùng<br />
<br />
CONTINUE<br />
<br />
Quay về điểm bắt đầu vòng lặp WHILE<br />
<br />
TRY…CATCH<br />
<br />
Điều khiển luồng thực thi khi có lỗi xảy ra<br />
<br />
GOTO<br />
<br />
Thay đổi luồng thực thi vô điều kiện<br />
<br />
RETURN<br />
<br />
Thoát vô điều kiện<br />
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn<br />
<br />
Cơ sở dữ liệu – Tổng quan hệ thống cơ sở dữ liệu<br />
<br />
VÍ DỤ (1)<br />
<br />
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn<br />
<br />
2<br />
<br />
9/5/2016<br />
<br />
Cơ sở dữ liệu – Tổng quan hệ thống cơ sở dữ liệu<br />
<br />
MÃ KỊCH BẢN<br />
<br />
Lưu trữ giá trị trong mã kịch bản<br />
<br />
Biến vô hướng<br />
<br />
Giá trị đơn (giá trị<br />
dữ liệu chuẩn)<br />
<br />
Biến bảng<br />
<br />
Bảng tạm<br />
<br />
Tập kết quả (dữ<br />
liệu bảng)<br />
<br />
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn<br />
<br />
Cơ sở dữ liệu – Tổng quan hệ thống cơ sở dữ liệu<br />
<br />
BẢNG TẠM<br />
Dùng để lưu trữ một tập kết quả trả về (dữ liệu<br />
dưới dạng bảng) từ một câu lệnh SELECT<br />
Hai loại bảng tạm<br />
<br />
<br />
Bảng tạm cục bộ<br />
Tên bắt đầu bằng dấu #<br />
Tồn tại trong phiên làm việc hiện tại. Trong phạm vi cửa sổ<br />
soạn thảo truy vấn tạo ra bảng đó<br />
<br />
<br />
<br />
Bảng tạm toàn cục<br />
Tên bắt đầu bằng dấu ##<br />
Tồn tại trong tất cả các phiên làm việc<br />
<br />
Bảng tạm được lưu trong CSDL tempdb<br />
Để xóa một bảng tạm, sử dụng lệnh DROP TABLE<br />
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn<br />
<br />
Cơ sở dữ liệu – Tổng quan hệ thống cơ sở dữ liệu<br />
<br />
VÍ DỤ (2)<br />
<br />
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn<br />
<br />
3<br />
<br />
Cơ sở dữ liệu – Tổng quan hệ thống cơ sở dữ liệu<br />
<br />
9/5/2016<br />
<br />
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn<br />
<br />
Cơ sở dữ liệu – Tổng quan hệ thống cơ sở dữ liệu<br />
<br />
THỦ TỤC (PROCEDURE)<br />
Procedure là một tập các câu lệnh<br />
<br />
<br />
<br />
Thực hiện một nhiệm vụ cụ thể<br />
Được đặt tên và lưu trữ dưới dạng đã biên<br />
dịch<br />
<br />
Các thành phần<br />
<br />
<br />
<br />
Biến<br />
Cấu trúc điều khiển<br />
<br />
Tên tối đa 128 ký tự<br />
<br />
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn<br />
<br />
Cơ sở dữ liệu – Tổng quan hệ thống cơ sở dữ liệu<br />
<br />
VÍ DỤ<br />
<br />
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn<br />
<br />
4<br />
<br />
9/5/2016<br />
<br />
Cơ sở dữ liệu – Tổng quan hệ thống cơ sở dữ liệu<br />
<br />
THỦ TỤC (PROCEDURE)<br />
CREATE PROCEDURE <br />
[]<br />
[WITH [RECOMPILE] [, ENCRYPTION]<br />
[, ]]<br />
AS <br />
ALTER PROCEDURE <br />
[]<br />
[WITH [RECOMPILE] [, ENCRYPTION]<br />
[, ]]<br />
AS <br />
DROP PROCEDURE <br />
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn<br />
<br />
Cơ sở dữ liệu – Tổng quan hệ thống cơ sở dữ liệu<br />
<br />
THỦ TỤC (PROCEDURE)<br />
Hai loại tham số<br />
<br />
<br />
Tham số đầu vào<br />
Tham số bắt buộc<br />
Tham số tùy chọn<br />
<br />
<br />
<br />
Tham số đầu ra<br />
<br />
Truyền trị cho tham số<br />
<br />
<br />
<br />
Truyền theo tên<br />
Truyền theo vị trí<br />
<br />
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn<br />
<br />
Cơ sở dữ liệu – Tổng quan hệ thống cơ sở dữ liệu<br />
<br />
VÍ DỤ<br />
<br />
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn<br />
<br />
5<br />
<br />