Phần 2: Ngôn ngữ T-SQL Nội Dung T-SQL? Khai báo biến Store Procedure (SP) Cấu trúc lệnh SP Tạo SP Enterprise Manager 12/03/15 Võ Phương Bình – ITFAC - DLU T-SQL T_SQL ngôn ngữ SQL mở rộng dựa SQL chuẩn T_SQL chia làm nhóm: Data Defination Language (DDL): Là lệnh để quản lý database Data Control Language (DCL): lệmh quản lý quyền truy cập đối tượng Data Manipulation Language (DML): lệnh dùng để xử lý liệu 12/03/15 Võ Phương Bình – ITFAC - DLU Khai báo biến Cú pháp khai báo biến: Declare @varname1 datatype1, @varname2 datatype2, Ví dụ 1: declare @hoten nvarchar(50), @tuoi int Ví dụ 2: declare @ClassIdent nvarchar(10) SET @ClassIdent = '1001' SELECT ClassID from Courses WHERE ClassID = @ClassIdent 12/03/15 Võ Phương Bình – ITFAC - DLU Store Procedure Cú pháp định nghĩa store procedure CREATE PROCEDURE StoreName ( @varname1 datatype1, @varname2 datatype2 OUTPUT, ) AS {SQL_statement | statement_block} GO Chú thích: dùng dấu gạch ngang (-) 12/03/15 Võ Phương Bình – ITFAC - DLU Cấu trúc lệnh SP IF ELSE Ví dụ: IF (not exist(SELECT * FROM Customers WHERE CustomerID=@CustomerID)) BEGIN Inser Into Customers Values(@CustomerID, …) END ELSE PRINT ‘Trùng khóa’ 12/03/15 Võ Phương Bình – ITFAC - DLU Cấu trúc lệnh SP (tt) CASE Ví dụ: CREATE PROCEDURE Vidu ( @ID int ) AS Begin Select * From Categories Where CategoryID = Case @ID When Then Else @ID End End 12/03/15 Võ Phương Bình – ITFAC - DLU Cấu trúc lệnh SP (tt) WHILE Ví dụ: WHILE (SELECT AVG(price) FROM titles) < 30 BEGIN UPDATE titles SET price = price * IF (SELECT MAX(price) FROM titles) > 50 BREAK ELSE CONTINUE END 12/03/15 Võ Phương Bình – ITFAC - DLU Cấu trúc lệnh SP (tt) GOTO Cú pháp: table_loop: SQL IF (Biểu thức logic) GOTO table_loop 12/03/15 Võ Phương Bình – ITFAC - DLU Tạo Store Procedure Enterprise Manager Chọn Database chuột phải\chọn New Store Procedure viết mã 12/03/15 Võ Phương Bình – ITFAC - DLU 10 ... Dung T- SQL? Khai báo biến Store Procedure (SP) Cấu trúc lệnh SP T o SP Enterprise Manager 12/03/15 Võ Phương Bình – ITFAC - DLU T- SQL T_ SQL ngôn ngữ SQL mở rộng dựa SQL chuẩn T_ SQL. .. StoreName ( @varname1 datatype1, @varname2 datatype2 OUTPUT, ) AS {SQL_ statement | statement_block} GO Chú thích: dùng dấu gạch ngang (-) 12/03/15 Võ Phương Bình – ITFAC - DLU Cấu trúc... Cấu trúc lệnh SP (tt) WHILE Ví dụ: WHILE (SELECT AVG(price) FROM titles) < 30 BEGIN UPDATE titles SET price = price * IF (SELECT MAX(price) FROM titles) > 50 BREAK ELSE CONTINUE END 12/03/15