Tôi không chắc chắn về DO-WHILE TRONG MS SQL Server 2008 nhưng bạn có thể thay đổi logic vòng lặp WHILE của mình để SỬ DỤNG giống như vòng lặp DO-WHILE.
Ví dụ được lấy từ đây:http://blog.sqlauthority.com/2007/10/24/sql-server-simple-example-of-ised-loop-with-continue-and-break-keywords/
Ví dụ về WHILE Loop
DECLARE @intFlag INT SET @intFlag = 1 WHILE (@intFlag <=5) BEGIN PRINT @intFlag SET @intFlag = @intFlag + 1 END GO
Bộ kết quả:
1 2 3 4 5
Ví dụ về WHILE Loop với từ khóa BREAK
DECLARE @intFlag INT SET @intFlag = 1 WHILE (@intFlag <=5) BEGIN PRINT @intFlag SET @intFlag = @intFlag + 1 IF @intFlag = 4 BREAK; END GO
Bộ kết quả:
1 2 3
Ví dụ về Vòng lặp WHILE với các từ khóa CONTINUE và BREAK
DECLARE @intFlag INT SET @intFlag = 1 WHILE (@intFlag <=5) BEGIN PRINT @intFlag SET @intFlag = @intFlag + 1 CONTINUE; IF @intFlag = 4 -- This will never executed BREAK; END GO
Bộ kết quả:
1 2 3 4 5
Nhưng hãy cố gắng tránh lặp lại ở cấp độ cơ sở dữ liệu. Tham khảo.