Đề tài Tìm hiểu và cài đặt CSDL Oracle, xây dựng một ứng dụng quản lý nhân sự đơn giản trên CSDL Oracle

MỤC LỤC

Phần 1: TRÌNH BÀY CẢM NHẬN VỀ VIỆC THAM QUAN & TIẾP

CẬN MÔI TRƯỜNG DOANH NGHIỆP . 4

Phần 2: TÌM HIỂU VÀ CÀI ĐẶT CSDL ORACLE, XÂY DỰNG MỘT

ỨNG DỤNG QUẢN LÝ NHÂN SỰ ĐƠN GIẢN TRÊN CSDL

ORACLE. 6

I. GIỚI THIỆU VỀ ORACLE. 6

II. QUÁ TRÌNH CÀI ĐẶT ORACLE. 7

III. SỬ DỤNG SQLPLUS TRONG ORACLE . 16

1. Giới thiệu về SQLPLUS . 16

2. Lệnh SQLPlus và lệnh SQL . 17

3. Bảo mật trong SQLPLus . 17

4. Các lệnh cơ bản . 18

5. Các Phát Biểu Tương Tác Dữ Liệu . 18

IV. THAO TÁC VỚI SQLPLUS . 19

1. TẠO MỚI SCHEMA TRONG ORACLE . 19

2. TẠO MỚI TABLESAPCE TRONG ORACLE . 20

3. TẠO BẢNG TRONG ORACLE VỚI ID TỰ ĐỘNG

TĂNG . 22

4. Thêm cột vào bảng . 24

5. Loại bỏ cột khỏi bảng . 24

6. Đổi tên cột của bảng . 24

7. Đổi tên bảng . 25

8. Xóa tất cả dữ liệu khỏi bảng . 25

V. TỔNG KẾT QUÁ TRÌNH TÌM HIỂU ORACLE . 25

VI. Chương Trình và Demo . 26

1. Giới thiệu: . 26

2. Phương pháp thực hiện . 26

3. Demo. 27

pdf29 trang | Chuyên mục: Oracle | Chia sẻ: dkS00TYs | Lượt xem: 4861 | Lượt tải: 5download
Tóm tắt nội dung Đề tài Tìm hiểu và cài đặt CSDL Oracle, xây dựng một ứng dụng quản lý nhân sự đơn giản trên CSDL Oracle, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
a với 
password là oracle_pass thì bạn có thể làm theo cách sau: 
 Trong phần user name bạn gõ: sys as sysdba, việc gõ user name như thế 
này giúp bạn truy cập vào Oracle mà không cần biết password admin. 
 Sau khi đăng nhập vào SQL Plus với quyền sysdba, bạn gõ vào các dòng 
lệnh sau để tạo schema với tên và password như trên 
create user sample_schema IDENTIFIED BY oracle_pass; 
grant dba to sample_schema ; 
grant connect to sample_schema; 
 Khái niệm SCHEMA và USER trongORACLE 
 User là một tài khoản trong cơ sở dữ liệu Oracle, sau khi được khởi tạo và 
gán quyền bằng lệnh CREATE USER thì tài khoản này được phép đăng 
nhập và sở hữu một schema trong cơ sở dữ liệu 
 Schema là 1 tập hợp các đối tượng trong cơ sở dữ liệu Oracle được quản lý 
bởi 1 user nào đó, các đối tượng của schema có thể là table, view, stored 
procedures, index, sequence... Schema được tự động tạo cùng với user khi 
thực thi lệnh CREATE USER trong SQLPLUS. 
Báo cáo môn học: Thực Tập Nhận Thức 2011 
Hoàng An – Lớp 08T2 – Nhóm: 05A Trang: 20 
 Mối quan hệ giữa User và Schema là quan hệ 1 – 1, một User chỉ quản lý 1 
Schema, và cũng chỉ có 1 Schema được khởi tạo khi thực thi lệnh 
CREATE USER. 
 Việc lưu trữ vật lý các đối tượng dữ liệu của Schema(như table, indexes, 
clusters) được thực hiện bởi các Tablespace, 1 Tablespace có thể lưu dữ 
liệu của nhiều Schema và các đối tượng dữ liệu trong 1 Schema có thể 
được lưu trữ trong nhiều Tablespace khác nhau tùy theo mô hình dữ liệu. 
Ngoài các user được tạo bằng lệnh CREATE USER, khicài đặt và tạo 
global database thì Oracle cũng khởi tạo sẵn 1 danh mục các user mặc định 
như ở danh sách bên dưới: 
ID Username Password 
1 ANONYMOUS invalid password 
2 AURORA$ORB$UNAUTHENTICATED INVALID 
3 AWR_STAGE AWR_STAGE 
4 CSMIG 
5 CTXSYS CTXSYS 
6 DBSNMP DBSNMP 
7 DEMO DEMO 
8 DIP DIP 
9 DMSYS DMSYS 
10 EXFSYS 
11 HR (Human Resources) HR 
12 OE (Order Entry) OE 
13 SH (Sales History) SH 
14 LBACSYS LBACSYS 
15 MDSYS MDSYS 
16 ORACLE_OCM ORACLE_OCM 
17 ORDPLUGINS ORDPLUGINS 
18 ORDSYS ORDSYS 
19 OUTLN OUTLN 
20 PERFSTAT PERFSTAT 
 SCOTT ADAMS JONES CLARK BLAKE 
TIGER WOOD STEEL CLOTH 
PAPER 
22 SYS 
CHANGE_ON_INSTALL or 
INTERNAL 
24 TRACESVR TRACE 
25 TSMSYS TSMSYS 
26 XDB 
2. TẠO MỚI TABLESAPCE TRONG ORACLE 
Báo cáo môn học: Thực Tập Nhận Thức 2011 
Hoàng An – Lớp 08T2 – Nhóm: 05A Trang: 21 
Tablespace là cấu trúc lưu trữ logic trong cơ sở dữ liệu Oracle, vì là logic nên bạn 
không tìm được Tablespace dưới dạng file trên hệ điều hành mà Oracle đang được 
cài đặt. Dữ liệu của Tablespace được lưu trong 1 hoặc nhiều datafiles (có mở rộng 
là .dbf) và là các file vật lý trên hệ thông file của hệ điều hành. Mối quan hệ giữa 
Tablespace và datafiles là mối quan hệ 1:n. Tức là 1 Tablespace có thể lưu dữ liệu 
trên nhiều datafiles, nhưng 1 datafile chỉ được liên kết với duy nhất 1 Tablespace, 
datafile được khởi tạo khi bạn tạo mới 1 Tablespace. 
 Trước tiên bạn login vào SQLPlus, sau đó bạn sử dụng nhóm lệnh sau để 
tạo mới 1 Tablespace tên là : ex_tablespace. 
create tablespace 
ex_tablespace 
datafile 
'ex_tablespace.dbf' 
size 
50m 
autoextend on 
next 10m 
maxsize 100m; 
 Dòng kết quả “Tablespace created” sau đó hiện ra thông báo bạn đã tạo 
mới thành công 1 Tablespace có tên là sample_tablespace. 
Kiểm tra kết quả tạo mới Template bằng cách liệt kê toàn bộ các Tablespace đang 
có trên Oracle và xem có tên của Tablespace bạn vừa tạo không bằng câu lệnh sau: 
Báo cáo môn học: Thực Tập Nhận Thức 2011 
Hoàng An – Lớp 08T2 – Nhóm: 05A Trang: 22 
select * from v$tablespace; 
Danh sách toàn bộ các Tablespace hiện ra, EX_TABLESPACE vừa tạo đã có trong 
danh sách: 
3. TẠO BẢNG TRONG ORACLE VỚI ID TỰ ĐỘNG TĂNG 
Trong bài này chúng ta sẽ cùng tạo bảng có tên là SinhVien để lưu tên các sinh 
viên . Cấu trúc bảng này như sau: 
ID ID-Khóa chính kiểu Number, tự động tăng 
Name Tên sinh viên 
Giả sử bạn muốn tạo một bảng trong Oracle có trường ID (kiểu số) và ID này tự 
động tăng mỗi khi bạn insert dữ liệu vào bảng thì bạn có thể thực hiện theo các 
bước sau. 
 Tạo mới bảng: 
Báo cáo môn học: Thực Tập Nhận Thức 2011 
Hoàng An – Lớp 08T2 – Nhóm: 05A Trang: 23 
 Ta dùng nhóm lệnh sau trong SQL Plus để tạo bảng theo cấu trúc trên. 
CREATE TABLE SinhVien( ID NUMBER PRIMARY KEY,NAME 
CHAR(50)); 
 Kết quả: 
 Tạo mới một Sequence: 
Sau khi tạo bảng SinhVien chúng ta cần tạo 1 Sequence giúp tự động tăng trường 
ID cho bảng này, ID này sẽ có giá trị bắt đầu từ 1 và được tăng +1 cho mỗi lần 
một hàng dữ liệu mới được chèn vào bảng. 
 Nhóm lệnh SQL để tạo Sequence này như sau: 
CREATE SEQUENCE auto_inc_Sq 
START WITH 1 
INCREMENT BY 1; 
 Kết quả: 
 Tạo mới 1 Trigger 
Chúng ta sẽ dùng 1 Trigger để kích hoạt Sequence vừa tạo, Trigger này sẽ giúp 
gọi tới auto_inc_Sq để tăng trường ID lên 1 trước khi lệnh Insert dữ liệu vào bảng 
được gọi. 
 Nhóm lệnh SQL để tạo Trigger này như sau 
CREATE OR REPLACE TRIGGER auto_inc_Tg 
BEFORE INSERT 
ON SinhVien 
REFERENCING NEW AS NEW 
FOR EACH ROW 
BEGIN 
SELECT auto_inc_Sq.NEXTVAL INTO :NEW.ID 
FROM DUAL; 
Báo cáo môn học: Thực Tập Nhận Thức 2011 
Hoàng An – Lớp 08T2 – Nhóm: 05A Trang: 24 
END; 
/ 
 Kết quả 
4. Thêm cột vào bảng 
Chúng ta dùng lệnh alter table để thêm cột vào bảng. Dưới đây là hình minh họa 
thêm cột vào bảng bằng lệnh altet table 
5. Loại bỏ cột khỏi bảng 
6. Đổi tên cột của bảng 
 Chúng ta có thể dễ dàng đổi tên cột trong Oracle bằng Rename column. Ví dụ sau 
đổi tên cột chucvu trong bảng nhanvien1 thành congviec. 
Báo cáo môn học: Thực Tập Nhận Thức 2011 
Hoàng An – Lớp 08T2 – Nhóm: 05A Trang: 25 
7. Đổi tên bảng 
Đôi khi chúng ta cần phải đổi tên bảng. Chúng ta có thể đổi tên bảng bằng lệnh 
sau: 
RENAME TO 
8. Xóa tất cả dữ liệu khỏi bảng 
 Để xóa tất cả các dòng khỏi bảng, chúng ta dùng lệnh truncate. Nó loại bỏ tất cả 
dòng rất nhanh. Truncate là lệnh DDL và như vậy nó không thể được hoàn tác 
bằng lệnh rollback. Chúng ta cũng có thể xóa tất cả các dòng bằng lệnh delete 
table và vì đây là lệnh DML nên chúng ta có thể trở lui hoạt động xóa nếu chúng 
ta muốn. Tuy nhiên vì lệnh delete ghi tất cả những thay đổi vào rollback 
segment, nên nó tốn thời gian thực thi nhiều hơn. Lệnh truncate không liên quan 
gì đến rollback segment nên chỉ vần vài giây, thậm chí với các bảng lớn nhất. 
 Cú pháp: 
TRUNCATE TABLE table_name [REUSE STORAGE] 
Trong đó: REUSE STORAGE: giữ lại khung để chứa, chỉ xóa dữ liệu 
V. TỔNG KẾT QUÁ TRÌNH TÌM HIỂU ORACLE 
Oracle là một hệ quản trị cơ sở dữ liệu khá hoàn hảo. Nó có thể chạy trên được 
nhiều hệ điều hành như: Linux, Window, Solaris. Trong quá trình thực hiện đồ án 
học phần với đề tài Tìm Hiểu Về Oracle. Chúng em đã phần nào nắm được những 
phần cơ bản của Oracle về cách cài đặt và gỡ bỏ một chương trình Oracle. Biết sử 
dụng công cụ SqlPlus để tương tác với cơ sở dữ liệu của Oracle và thấy nó là một 
công cụ hữu ích cho những người quản trị cơ sở dữ liệu, sử dụng Sqlplus để chạy 
các truy vấn SQL và các khối mã PL/SQL, ngoài ra sử dụng Sqlplus thực hiện các 
lệnh tạo các bảng, thực hiện phát biểu các ràng buộc not null, khóa chính… và 
quản trị cơ sở dữ liệu, cho phép khởi động và tắt cơ sở dữ liệu. Học được cách tạo 
và quản lý các bảng đơn giản. 
Vì thời gian không cho phép, nên chúng em chỉ nghiên cứu ở mức căn bản. Oracle 
còn có những ưu điểm hay như: Triển khai Oracle trên nhiều OS khác nhau 
Báo cáo môn học: Thực Tập Nhận Thức 2011 
Hoàng An – Lớp 08T2 – Nhóm: 05A Trang: 26 
(Windows, Solaris, Linux,...). Có các bảng đặc biệt trong Oracle như bảng tạm, 
bảng mở rộng và bảng có tổ chức chỉ mục. Các cấu trúc bảng chẳng hạn như bảng 
phân khu, bảng có tổ chức chỉ mục. Thực hiện các quá trình sao lưu và phục hồi 
cơ sở dữ liệu bằng cách sử dụng Enterprise Manage. Có thể import một dumpFile 
(backupFile) từ một máy chạy OS này sang OS khác hoặc từ một version thấp lên 
một version cao hơn mà không gặp bất cứ trở ngại nào! ( Việc ngược lại cũng có 
thể thực hiện được nếu như bạn không xài các tính năng mới so với version trước 
đó). Hơn nữa Oracle còn tích hợp thêm PL/SQL, là một ngôn ngữ lập trình có cấu 
trúc - Structure Language. Tạo thuận lợi cho các lập trình viện viết các Trigger, 
StoreProcedure, Package. Đây là điểm rất mạnh so với các CSDL hiện có trên thị 
trường. 
VI. Chương Trình và Demo 
1. Giới thiệu: 
Chương trình gồm các chức năng: 
 Thêm, Sửa, Xóa, Tìm kiếm thông tin các nhân viên. 
 Thống kê, báo cáo: Hợp đồng, Nhân Viên 
 In ấn, xuất file doc, exel, pdf.. 
Phương pháp thực hiện: 
 Sử dụng ngôn ngữ C Sharp để tạo giao diện GUI 
 Tạo CSDL: Gồm 5 bảng 
 Bảng NhanVien 
Trường Kiểu Mô tả 
MaNV Number Khóa chính,Tự động tăng 
HoNV Varchar2(20) Họ nhân viên 
TenNV Varchar2(20) Tên nhân viên 
GioiTinh Logic Giới tính 1 nam, 0 nữ 
NgaySinh Date Ngày Sinh 
MaPhong Number Khóa ngoại 
MaChucVu Number Khóa ngoại 
NoiSinh Varchar2(50) Nơi sinh 
QueQuan Varchar2(50) Quê quán 
DanToc Varchar2(10) Dân tộc 
TonGiao Varchar2(10) Tôn giáo 
SoDienThoai Number Số điện thoại 
Email Varchar2(20) Email 
DiaChi Varchar2(50) Địa chỉ 
TrinhDo Varchar2(10) Trình độ 
 Bảng ChucVu 
Trường Kiểu Mô tả 
Báo cáo môn học: Thực Tập Nhận Thức 2011 
Hoàng An – Lớp 08T2 – Nhóm: 05A Trang: 27 
MaChucVu Number Khóa chính 
ChucVu Varchar2(50) Tên chức vụ 
 Bảng Phong 
Trường Kiểu Mô tả 
MaPhong Number Khóa chính 
Phong Varchar2(50) Tên phòng 
 Bảng HopDong 
 Bảng TenHopDong 
 Mô hình thực thể kết hợp 
2. Demo 
Trường Kiểu Mô tả 
MaHopDong Number Khóa chính 
MaNV Number Khóa ngoại 
NoiDung Varchar2(50) Nội dung hợp đồng 
NgayKy Varchar2(50) Ngày ký hợp đồng 
Trường Kiểu Mô tả 
MaHopDong Number Khóa chính 
TenHopDong Varchar2(50) Tên hợp đồng 
Báo cáo môn học: Thực Tập Nhận Thức 2011 
Hoàng An – Lớp 08T2 – Nhóm: 05A Trang: 28 
Báo cáo môn học: Thực Tập Nhận Thức 2011 
Hoàng An – Lớp 08T2 – Nhóm: 05A Trang: 29 

File đính kèm:

  • pdfĐề tài Tìm hiểu và cài đặt CSDL Oracle, xây dựng một ứng dụng quản lý nhân sự đơn giản trên CSDL Oracle.pdf
Tài liệu liên quan