Sự khác biệt giữa Chế độ xem và Thủ tục được Lưu trữ

Mục lục:

Sự khác biệt giữa Chế độ xem và Thủ tục được Lưu trữ
Sự khác biệt giữa Chế độ xem và Thủ tục được Lưu trữ

Video: Sự khác biệt giữa Chế độ xem và Thủ tục được Lưu trữ

Video: Sự khác biệt giữa Chế độ xem và Thủ tục được Lưu trữ
Video: Vật lý lớp 10 - Bài 17: Trọng lực và lực căng - Kết nối tri thức 2024, Tháng mười một
Anonim

Xem so với Quy trình được lưu trữ

Chế độ xem và thủ tục được lưu trữ là hai loại đối tượng cơ sở dữ liệu. Chế độ xem là loại truy vấn được lưu trữ, thu thập dữ liệu từ một hoặc nhiều bảng. Đây, là cú pháp để tạo chế độ xem

tạo hoặc thay thế tên chế độ xem

như

chọn_phẩm;

Thủ tục được lưu trữ là một tập lệnh SQL được biên dịch trước, được lưu trữ trong máy chủ cơ sở dữ liệu. Mỗi thủ tục được lưu trữ có một tên gọi, được sử dụng để gọi chúng bên trong các gói, thủ tục và hàm khác. Đây là cú pháp (trong ORACLE) để tạo một thủ tục được lưu trữ, tạo hoặc thay thế tên thủ tục (các tham số)

bắt đầu

câu lệnh;

ngoại lệ

ngoại_lượng

kết thúc;

Xem

A View hoạt động như một bảng ảo. Nó ẩn một câu lệnh select bên trong nội dung của nó. Câu lệnh select này có thể là một câu lệnh rất phức tạp, lấy dữ liệu từ một số bảng và dạng xem. Do đó, nói cách khác, một khung nhìn là một câu lệnh chọn được đặt tên, được lưu trữ trong cơ sở dữ liệu. Một khung nhìn có thể được sử dụng để ẩn logic đằng sau các quan hệ bảng khỏi người dùng cuối. Vì một dạng xem là kết quả của một truy vấn được lưu trữ, nó không giữ bất kỳ dữ liệu nào. Nó thu thập dữ liệu từ các bảng cơ sở và hiển thị. Chế độ xem cũng đóng một vai trò quan trọng trong bảo mật dữ liệu. Khi chủ sở hữu bảng chỉ cần hiển thị một tập dữ liệu cho người dùng cuối, thì việc tạo chế độ xem là một giải pháp tốt. Lượt xem có thể được chia thành hai loại

  • Các chế độ xem có thể cập nhật (Các chế độ xem có thể được sử dụng để CHÈN, CẬP NHẬT và XÓA)
  • Chế độ xem không thể cập nhật (Chế độ xem không thể được sử dụng để CHÈN, CẬP NHẬT và XÓA)

Các chế độ xem có thể cập nhật không được bao gồm các phần sau, Đặt toán tử (INTERSECT, MINUS, UNION, UNION ALL)

DISTINCT

Hàm Tổng hợp Nhóm (AVG, COUNT, MAX, MIN, SUM, v.v.)

GROUP BY Mệnh đề

ĐẶT HÀNG THEO Khoản

KẾT NỐI BẰNG Mệnh đề

BẮT ĐẦU VỚI Mệnh đề

Biểu thức Bộ sưu tập trong Danh sách Chọn lọc

Truy vấn phụ trong Danh sách Chọn

Tham gia Truy vấn

Thủ tục lưu trữ

Các thủ tục được lưu trữ được đặt tên là các khối lập trình. Họ phải có một cái tên để gọi. Các thủ tục được lưu trữ chấp nhận các tham số là đầu vào của người dùng và xử lý theo logic đằng sau thủ tục và đưa ra kết quả (hoặc thực hiện một hành động cụ thể). Khai báo biến, phép gán biến, câu lệnh điều khiển, vòng lặp, truy vấn SQL và các hàm / thủ tục / lệnh gọi gói khác có thể nằm trong phần thân của thủ tục.

Sự khác biệt giữa Chế độ xem và Thủ tục được Lưu trữ là gì?

Hãy để chúng tôi xem sự khác biệt giữa hai điều này.

• Các khung nhìn hoạt động như một bảng ảo. Chúng có thể được sử dụng trực tiếp khi đóng các truy vấn SQL (chọn), nhưng không thể sử dụng các thủ tục khi đóng các truy vấn.

• Các khung nhìn chỉ có một câu lệnh select làm phần thân của chúng, nhưng các thủ tục có thể có các khai báo Biến, phép gán biến, câu lệnh điều khiển, vòng lặp, truy vấn SQL và các hàm / thủ tục / gói gọi khác làm phần thân của nó.

• Thủ tục chấp nhận các tham số để thực thi, nhưng các khung nhìn không muốn các tham số thực thi.

• Có thể tạo các loại bản ghi từ các dạng xem bằng% ROWTYPE, nhưng không thể tạo các loại bản ghi bằng cách sử dụng thủ tục.

• Các gợi ý SQL có thể được sử dụng bên trong câu lệnh view select, để tối ưu hóa kế hoạch thực thi, nhưng không thể sử dụng các gợi ý SQL trong các thủ tục được lưu trữ.

• Có thể cấp DELETE, INSERT, UPDATE, SELECT, FLASHBACK và DEBUG cho các lượt xem, nhưng chỉ EXECUTE và DEBUG mới có thể được cấp trên các quy trình.

Đề xuất: