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

SQL server 2000 cấu trúc điều khiển cấu trúc lặp WHILE

5 352 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 5
Dung lượng 92 KB

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

Nội dung

SQL Server 2000 : Cấu trúc điều khiển – Cấu trúc lặp WHILE Với cấu trúc lặp, người lập trình có thể chỉ định một hoặc nhiều câu lệnh sẽ được thực hiện lặp lại nhiều lần trong khi giá trị

Trang 1

SQL Server 2000 : Cấu trúc điều khiển – Cấu trúc lặp WHILE

Với cấu trúc lặp, người lập trình có thể chỉ định một hoặc nhiều câu lệnh sẽ được thực hiện lặp lại nhiều lần trong khi giá trị của biểu thức luận lý so sánh vẫn còn đúng Giống như cấu trúc rẽ nhánh, cấu trúc lặp được phép sử dụng bên trong một lô (batch) các lệnh hoặc bên trong một thủ tục nội tại Giữa cấu trúc rẽ nhánh và cấu trúc lặp không có thứ tự ưu tiên khi chúng lồng vào nhau và cấp độ lồng nhau là không có giới hạn.

Thực tế việc sử dụng cấu trúc lặp WHILE bị giới hạn trong nhiều trường hợp Bởi vì bản thân các lệnh truy vấn cập nhật dữ liệu như là : SELECT, UPDATE SET, DELETE trong Transaction-SQL đã tự động thực hiện việc lặp từ dòng dữ liệu đầu tiên đến dòng dữ liệu cuối cùng bên trong bảng

Cấu trúc lặp WHILE thông thường được dùng với các biến có kiểu dữ liệu cursor, cách thức sử dụng biến kiểu dữ liệu cursor sẽ được hướng dẫn trong các phần sau

Cú pháp :

Trong đó :

• Biểu thức luận lý : thông thường là một biểu thức so sánh để chỉ các lệnh sẽ được lặp lại trong khi mà giá trị của biểu thức vẫn còn đúng

• Các lệnh lặp : các câu lệnh được thực hiện bên trong vòng lặp

Ví dụ :

Để in ra 10 số nguyên dương bắt đầu từ 100 Bạn sử dụng cấu trúc lặp WHILE như sau :

Trang 2

Kết quả trả về :

Bạn có thể sử dụng từ khóa BREAK lồng vào cấu trúc lặp WHILE để có thể kết thúc việc lặp của các lệnh bên trong vòng lặp mà không cần xét đến giá trị trả về của biểu thức luận

lý dùng để so sánh phía sau từ khóa WHILE phải là sai Tuy nhiên từ khóa BREAK thường được sử dụng kèo theo với một biểu thức luận lý khác

Ví dụ :

Thực hiện việc lặp giống ví dụ trên, tuy nhiên muốn rằng vòng lặp sẽ bị kết thúc khi mới

in tới số nguyên 105 Bạn sử dụng cấu trúc lặp WHILE như sau :

Kết quả trả về :

Trang 3

Bạn cụng có thể sử dụng từ khóa CONTINUE lồng vào cấu trúc lặp WHILE để chỉ định các lệnh bên trong vòng lặp ở phía dưới từ khóa CONTINUE tạm thời không thực hiện tiếp, khi đó con trỏ vòng lặp sẽ nhảy về đầu dòng lặp để kiểm tra giá trị của biểu thức luận lý so sánh là vẫn còn đúng hay không Tuy nhiên từ khóa CONTINUE thông thường được dùng kèm theo với một biểu thức luận lý khác

Ví dụ :

Thực hiện việc lặp giống các ví dụ trên, tuy nhiên muốn rằng vòng lặp sẽ in xót số nguyên 105 Bạn sử dụng cấu trúc lặp WHILE như sau :

Kết quả trả về :

Trang 4

Kết chứng kết quả trả về bạn suy luận khi vòng lặp thực hiện đến giá trị của biến

@Songuyen = 105 thì khi đó lệnh PRINT "Số nguyên : " không được thực hiện và con trỏ chương trình được quay lên đầu vòng lặp để kiểm tra tiếp biểu thức luận lý so sánh

Sơ đồ tóm tắt ý nghĩa của cấu trúc lặp WHILE kèm với các từ khóa CONTINUE hoặc BREAK :

Cú pháp :

Ví dụ :

Để tăng tự động tỷ lệ phần trăm cho các vật tư trong bảng VATTU theo quy tắc sau :

• Mỗi lần chỉ tăng lên 5% cho các vật tư có giá trị tại cột tỷ lệ nhỏ hơn 30%

• Lặp lại hành động tăng trong khi mà giá trị trung bình tỷ lệ phần trăm của các vật tư vẫn còn thấp hơn 40%

Bạn sử dụng các lệnh như sau :

Trang 5

Nhận xét : ví dụ trên khá phức tạp, do thế bạn phải chèn thêm vào các ghi chú

(comment) để giúp bạn thất được từng xử lý rời rạc nhằm dễ xem, dễ hiểu Trong Transaction-SQL, bạn có thể chèn các ghi chú trong các câu lệnh bằng hai dấu trừ liên tiếp nhau hoặc muốn che lại một khối các lệnh liên tiếp nhau thì bạn sẽ sử dụng cặp ký tự như bên dưới :

Ngoài ra trong vòng lặp bạn có thể sử dụng lệnh IF EXISTS dùng để kiểm tra trường hợp sau khi đã tăng hết tất cả tỷ lệ phần trăm các vật tư với đều lớn hơn 30 mà trung bình tỷ lệ phần trăm của các vật tư vẫn chưa lớn hơn 40 thì bắt buộc vòng lặp phải được thoát ra ngoài, bởi vì nếu không thì vòng lặp sẽ bị lặp vô tận không bao giờ thoát ra được

Ngày đăng: 03/12/2015, 21:10

HÌNH ẢNH LIÊN QUAN

Sơ đồ tóm tắt ý nghĩa của cấu trúc lặp WHILE kèm với các từ khóa CONTINUE hoặc BREAK : - SQL server 2000   cấu trúc điều khiển cấu trúc lặp WHILE
Sơ đồ t óm tắt ý nghĩa của cấu trúc lặp WHILE kèm với các từ khóa CONTINUE hoặc BREAK : (Trang 4)

TỪ KHÓA LIÊN QUAN

w