1. Khai báo biến cục bộ
Trong T-SQL, biến chứa giá trị trung gian phải được khai báo trước khi sử dụng:
DECLARE @VarName data_type [,...n]
- Tất cả các biến cục bộ phải bắt đầu bằng ký hiệu @ trước tên của nó.
- Phạm vi biến: biến khai báo trong một stored procedure hoặc một gói lệnh chỉ khả dụng bên trong vùng khai báo nó.
- Trong T-SQL không có khái niệm biến toàn cục
Ví dụ: DECLARE @Counter int
DECLARE @FirstName varchar(25)
Hay khai báo trên cùng dòng:
DECLARE @FirstName varchar(25), @Counter int
- Sau khi khai báo biên có giá trị NULL
2. Gán giá trị cho biến cục bộ
Cách 1: SET @VarName = <Expression>
Ví dụ: Declare @Ngay DateTime
set @Ngay ='2005/5/15'
print @Ngay
Set @Ngay = @Ngay + 1
print @Ngay
Cách 2: Dùng câu lệnh Select
SELECT @VarName = <Expression> [FROM …]
Nếu query trả về nhiều record thì giá trị trên record cuối cùng sẽ được gán cho biến.
DECLARE @intMaNV int
SELECT @intMaNV = 5 + 6
SELECT @intMaNV = MAX(MaNV) FROM SieuThi..NhanVien