Giới thiệu phương pháp hướng đối tượng PACKAGEPACKAGE THƯ VIỆN PACKAGE TRONG ORACLETHƯ VIỆN PACKAGE TRONG ORACLE Nội dung Giới thiệu về Package thư viện chuẩn của oraccle Một số package thông dụng[.]
Trang 1PACKAGE
Trang 2THƯ VIỆN PACKAGE TRONG ORACLE
Trang 3Nội dung
Giới thiệu về Package thư viện chuẩn của
oraccle.
Một số package thông dụng được xây dựng sẵn.
Tìm hiểu Package DBMS_OUTPUT.
Tìm hiểu Package UTIL_FILE.
Trang 4THƯ VIỆN PACKAGE TRONG ORACLE
Giới thiệu về Package thư viện chuẩn của oraccle
Oracle có xây dựng trong cơ sở dữ liệu trên 130 package để mở rộng thành hệ thống package được xây dựng sẵn, hỗ trợ cho ngôn ngữ PL/SQL được hoàn thiện
và mềm dẻo hơn, giúp người quản trị cơ sở dữ liệu và lập trình trên môi oracle được nhanh hơn và đơn giản hơn
Thông thường mỗi phiên bản cơ sở dữ liệu mới sẽ cung cấp những package mới Ví dụ như oracle cung cấp khoảng 17 package mới trong lần cập nhật từ phiên bản 9.2 lên 10.0
Trang 5THƯ VIỆN PACKAGE TRONG ORACLE
Một số package thông dụng được xây dựng sẵn
Tên PacKage Chức năng
DBMS_ALERT Cung cấp các sự kiện về các thông
điệp của database DBMS_APPLICATION_I
NFO Thông tin về các hoạt động hiện thời đối với database DBMS_DDL Biên dịch lại các hàm, thủ tục ,
Package Phân tích các index, table, cluster,
DBMS_DESCRIBE Trả về các diễn giải cho các tham số
của thủ tục, hàm DBMS_JOB Lên kế hoạch thực hiện các đoạn mã
lệnh PL/SQL
Trang 6THƯ VIỆN PACKAGE TRONG ORACLE
Một số package thông dụng được xây dựng sẵn
Tên PacKage Chức năng
DBMS_LOCK Cung cấp các hàm cho phép yêu cầu, giải
phóng, điều chỉnh các trạng thái khoá (lock) đối với từng đối tượng trên database
DBMS_MAIL Gửi các message từ Oracle Server tới
Oracle*mail DBMS_OUTPUT Kết xuất các giá trị trả về từ các hàm, thủ tục,
trigger,
DBMS_PIPE Cho phép xử lý gửi đồng thời các thông điệp DBMS_SESSION Cung cấp các phép truy nhập SQL thay vì các
câu lệnh session
Trang 7THƯ VIỆN PACKAGE TRONG ORACLE
Một số package thông dụng được xây dựng sẵn
Tên PacKage Chức năng
DBMS_SHARED_POOL Cho phép lưu giữ các đối tượng trong
vùng nhớ chia sẻ DBMS_SQL Cho phép sử dụng lệnh SQL động để
truy xuất database DBMS_TRANSACTION Điều khiển các giao dịch, cải thiện và
nâng cao hiệu quả DBMS_UTILITY Đối với các giao dịch nhỏ và không
phân tán DBMS_UTILITY phân tích các đối tượng trong từng schema
UTL_FILE Cho phép truy xuất file với câu lệnh
PL/SQL
Trang 8Package DBMS_OUTPUT
Giới thiệu về Package DBMS_OUTPUT
Package DBMS_OUTPUT dùng để gửi, nhận các thông điệp giữa các package, procedure, function hay các trigger với nhau
Package DBMS_OUTPUT cung cấp các hàm xuất nhập trên bộ nhớ đệm rất giống với các hàm trong
Package UTIL_FILE Có khả năng lấy và xuất các thông tin từ bộ nhớ đệm
Package này rất có ích nếu bạn dùng nó như một công cụ để gỡ lỗi
Trang 9Package DBMS_OUTPUT
Chức năng của Package DBMS_OUTPUT.
Gói DBMS_OUTPUT cung cấp cho bạn khả năng gửi tin nhắn từ pl / sql Chương trình con được sử dụng nhiều nhất của DBMS_OUTPUT là cho phép hiển thị
các nội dung của bộ đệm-tin trong màn hình
Trong SQL * PLUS có thể được thực hiện với lệnh: "SET SERVEROUTPUT”
Trong các sự kiện Button các bạn có thể kích hoạt với lệnh “SET SERVEROUT”
Trang 10Package DBMS_OUTPUT
Một số chương trình con thông dụng.
1 - Dbms_output.enable
Kích hoạt các chương trình con PUT, PUT_LINE, GET_LINE, GET_LINES và NEW_LINE Nếu gói
dbms_output không được kích hoạt các chương trình con
sẽ bỏ qua cuộc gọi Nếu lệnh "SET SERVEROUT” được gọi thì gói sẽ tự động được kích hoạt
Cú pháp
Dbms_output.enable;
hoặc Dbms_output.enable (buffer_size);
Trang 11Package DBMS_OUTPUT
Một số chương trình con thông dụng.
2- Dbms_output.disable
Dbms_output.disable sẽ vô hiệu hóa các chương trình con PUT, PUT_LINE, GET_LINE,
GET_LINES và NEW_LINE Câu lệnh gọi đến các chương trình con sẽ bị bỏ qua và bộ đệm sẽ bị xóa
Cú pháp: dbms_output.disable;
3- Dbms_output.new_line:
Thêm 1 dòng vào cuối của bộ nhớ đệm
cú pháp: Dbms_output.new_line;
Trang 12Package DBMS_OUTPUT
Một số chương trình con thông dụng.
Dbms_output.put_line hoặc dbms_output.put thêm tham số truyền cho bộ nhớ đệm Các thủ tục này
sử dụng với VARCHAR2, DATE hoặc NUMBER chuyển đổi sang VARCHAR2 trước khi đưa vào bộ nhớ đệm
Put_line tự động thêm và cuối cùng của dòng Nếu
dòng lớn hơn giới hạn bộ nhớ đệm, sẽ có báo lỗi
Cú pháp: Dbms_output.put (tham số);
Dbms_output.put_line (tham số);
Trang 13Package DBMS_OUTPUT
Một số chương trình con thông dụng.
5- Dbms_output.get_line và Dbms_output.get_lines
- Get_line: lấy 1 dòng từ bộ nhớ đệm
- Get_lines: lấy 1 hoặc nhiều dòng từ bộ nhớ đệm
Cú pháp
dbms_output.get_line (p_line, p_status);
dbms_output.get_lines (p_lines, p_numlines);
Trang 14Package UTIL_FILE
Giới thiệu về Package UTIL_FILE
Package này cung cấp khả năng nhập file văn bản bên trong PL/SQL Oracle giới thiệu
package UTL_FILE với cơ sở dữ liệu cho phép bạn đọc dữ liệu đầu vào từ các file của hệ điều hành hoặc ghi dữ liệu vào các file của hệ điều hành Điều này rất hữu ích nếu bạn muốn nạp dữ liệu
từ hệ cơ sở dữ liệu khác và cơ sở dữ liệu của mình
Trang 15Package UTIL_FILE
Một số hàm của package UTL_FILE
1- FILE_TYPE: kiểu dữ liệu đối với một handle của file
2- IS_OPEN: Hàm này trả về kiểu dữ liệu BOOLEAN
Nó trả về giá trị TRUE nếu file đó đang mở, trả và FALSE nếu file đó đang đóng
3- FOPEN: Hàm này được sử dụng để mở một file cho viêc nhập hoặc xuất Hàm này trả về giá trị là dạng thức của handle trong kiểu dữ liệu FILE_TYPE
‘R’: Chế độ đọc
‘W’: Chế độ ghi
‘A’: Chế độ chèn nối tiếp vào cuối tập tin
Trang 16Package UTIL_FILE
Một số hàm của package UTL_FILE
4- FCLOSE: Hàm này được sử dụng để đóng một file đang mở
5- FCLOSE_ALL: Hàm này được sử dụng để đóng tất cả các file đang mở trong session hiện hành 6- FFLUSH: Thủ tục này lấy tất cả dữ liệu trong bộ nhớ đệm ghi vào file
7- GET_LINE: Thủ tục này lấy một dòng của file văn bản đang mở và đặt nội dung văn bản vào
trong thông số OUT của thủ tục
Trang 17Package UTIL_FILE
Một số hàm của package UTL_FILE
8- PUT_LINE: Thủ tục này ghi một chuỗi văn bản từ
thông IN vào file đã mở Sau đó ký hiệu kết thúc một dòng được ghi vào file văn bản
9- PUT: Thủ tục này giống như thủ tục PUT_LINE nhưng không đặt ký hiệu kết thúc dòng vào file đã mở
10- UTF: Thủ tục này đặt văn bản đã định dạng vào file
đã mở
11- NEW_LINE: Thủ tục này chèn một dòng mới vào file văn bản đã mở
Trang 18Package với con trỏ và ngoại lệ
The End