Trung tâm của cơ sở dữ liệu Oracle là data dictionary. Data dictionary tựđộng được tạo ra khi cơ sở dữ liệu Oracle được tạo. Oracle cập nhật lên data dictionary bằng các lệnh DDL (Data Define Language). Các table của từđiển dữ liệu được tạo ra bằng lệnh CREATE DATABASE và chỉđược tạo từ user SYS. Các view trong từđiển dữ liệu chức các thông tin dưới dạng dễ nhìn hơn bảng.
Có các dạng view là:
USER_xxx: là những đối tượng thuộc user. Ví dụ các bảng được tạo bởi user ALL_xxx: là tất cả các đối tượng mà user có quyền truy nhập
DBA_xxx: tất cả các đối tượng trong database V$: Các thực thi của Server.
Ngoài ra còn có các view quan trọng khác là:
DICTIONARY: Thông tin về toàn bộ các table, view, snapshot trong từđiển dữ liệu
TABLE_PRIVILEGES: Thông tin về việc gán quyền trên các đối tượng IND: đồng nghĩa của USER_INDEX.
Muốn hiển thị toàn bộ thông tin về các table, view, snapshot trong từđiển dữ liệu dùng lệnh SELECT * FROM DICTIONARY;
Oracle cơ bản - SQL và PL/SQL Hiển thị cấu của USER_OBJECT DESCRIBE USER_OBJECT; Hiển thị tất cả các bảng mã user đó sở hữu: SELECT OBJECT_NAME FROM USER_OBJECT
WHERE OBJECT_TYPE = ‘TABLE’; SELECT * FROM TAB; SELECT * FROM TAB;
SELECT TABLE_NAME FROM USER_TABLE;
Hiển thị tất cả các loại đối tượng trong từđiển dữ liệu: SELECT DISTINCT OBJECT_TYPE
FROM USER_OBJECTS;
7.7.BÀI TẬP
1. Tạo bảng PROJECT với các column được chỉ ra dưới đây, PROJID là promary key, và P_END_DATE > P_START_DATE.
Column name Data Type Size. PROJID NUMBER 4 P_DESC VARCHAR2 20 P_START_DATE DATE P_END_DATE DATE BUDGET_AMOUNT NUMBER 7,2 MAX_NO_STAFF NUMBER 2
2. Tạo bảng ASSIGNMENTS với các column được chỉ ra dưới đây, đồng thời cột PROJID là foreign key tới bảng PROJECT, cột EMPNO là foreign key tới bảng EMP.
Column name Data Type Size.
PROJID NUMBER 4 NOT NULL EMPNO NUMBER 4 NOT NULL EMPNO NUMBER 4 NOT NULL A_START_DATE DATE
A_END_DATE DATE
BILL_AMOUNT NUMBER 4,2 ASSIGN_TYPE VARCHAR2 2 ASSIGN_TYPE VARCHAR2 2
3. Thêm column COMMENTS kiểu LONG vào bảng PROJECTS. Thêm column HOURS kiểu NUMBER vào bảng ASSIGNMENTS.
4. Sử dụng view USER_OBJECTS hiển thị tất cả các đối tượng user sở hữu.
5. Thêm ràng buộc duy nhất (UNIQUE) cho 2 column PROJECT_ID và EMPNO của bảng ASSIGNMENTS.
6. Xem các thông tin về các ràng buộc trong USER_CONSTRAINTS. 7. Xem trong USER hiện tại có tất cả bao nhiêu bảng.
Oracle cơ bản - SQL và PL/SQL
Chương 8. CÁC LỆNH THAO TÁC DỮ LIỆU