Tìm kiếm một câu trả lời chính tắc cho câu hỏi tại sao các gói nên được ưu tiên trong cơ sở dữ liệu Oracle hơn các thủ tục và hàm độc lập.
Tìm kiếm một câu trả lời chính tắc cho câu hỏi tại sao các gói nên được ưu tiên trong cơ sở dữ liệu Oracle hơn các thủ tục và hàm độc lập.
Câu trả lời:
Lợi ích của các gói
Phân nhóm logic - Các phương thức phối hợp với nhau có thể được đưa vào một đơn vị gắn kết thay vì chỉ được ghép nối logic nhưng tách biệt về mặt vật lý.
Phương thức riêng tư an toàn - Chức năng và thủ tục có thể được đặt ở chế độ riêng tư đối với gói và chỉ được sử dụng trong gói. Điều này làm cho bề mặt công cộng đơn giản và an toàn hơn.
Quản lý đặc quyền - Quyền có thể được cấp một lần cho một nhóm các thủ tục hoạt động cùng nhau thay vì riêng biệt cho từng thủ tục / chức năng được yêu cầu.
Gói an toàn - Gói được gói khó khăn hơn để mở gói hơn chức năng / quy trình được gói.
Đặt tên đơn giản - Một không gian tên lớn hơn cho phép các tên đơn giản hơn và có thể được sử dụng lại trong các gói khác.
Hiệu suất tốt hơn - Các gói có thể được biên dịch và được tải vào bộ nhớ hoàn toàn thay vì từng phần như các phương pháp khác. Lợi ích này nếu nó tồn tại ở mức tối thiểu so với các lợi ích khác.
Giảm hiệu lực - Thay đổi phần thân gói không làm mất hiệu lực các phụ thuộc như thay đổi chức năng hoặc thủ tục.
Các tính năng độc đáo - Biến gói, Hằng số gói, Khởi tạo, Trạng thái phiên, Nhận xét gói và Phương thức quá tải.
Tài liệu tham khảo:
11.2 Hướng dẫn về khái niệm
Hỏi Tom Câu hỏi
StackOverflow.com Câu hỏi về Hiệu suất gói
Unwrapping Trình bày PL / SQL (pdf)