Đồ Án Tốt Nghiệp GVHD:TS Nguyễn Ngọc Bình
SVTH: Đỗ Hữu Bá Trang 1
LỜI MỞ ĐẦU.
sở dữ liệu là mt trong những ngành được quan tâm nhiu trong khoa
học máy tính, trong công nghệ thông tin. Từ khi có mô hình cơ sở dữ liệu đầu
tiên vào những năm 60 đến nay tuy không là chặng đường dài đối với các
ngành khoa học khác, nhưng với khoa học máy tính và đặc biệt với cơ sở dữ
liệu thì đó là thời gian đáng kể. Cơ sdữ liệu đã tri qua nhiều thế h của hệ
quản trị cơ sở dữ liệu, và đã có nhiều ứng dụng trong khoa học và trong các
nghành kinh tế quốc dân.
Thời đại thông tin ngày nay, i toán cơ bản và cốt yếu là :Làm thế nào lưu
trữ thông tin an toàn và chắc chắn đồng thời lại truy cập chính xác và dễ dàng.
Theo thời gian, yêu cầu của bài toán ngày càng cao với lượng thông tin cần
lưu trữ, xử lý ngày càng nhiều và đa dạng.
H quản trị cơ sở dữ liu Oracle là một trong những giải pháp tốt nhất, được
công nhận trên th trường tin học thế giới hiện nay. Oracle đã được nghiên cứu
phát triển, cho phép người sử dụng khai thác triệt để tiềm năng của hệ
thống quản lý cơ sở dữ liệu quan hệ một cách ưu việt và mạnh nhất hiện nay.
Nhu cầu tích lũy và xlý các dữ liệu đã nảy sinh trong mọi công việc, trong
mi hoạt động của con người. Một cá nhân hay một t chức có thể đã nhầm có
mt hệ thống xử lý dữ liệu, dù cơ chế hoạt động của nó là th công và chưa tự
động hoá. Một bài toán nhcũng cần đến dữ liệu, nhưng không nhất thiết phải
quản lý các dữ liệu theo các phương pháp khoa học. Do khả năng tổng hợp của
người xử lý, các dữ liệu ấy đưc lấy ra, được xử lý mà không vp phải khó
khăn nào. Tuy nhiên khi bài toán có kích thước lớn hẳn và số lượng dữ liệu cần
phải xử lý ng lên nhanh thì e rằng tầm bao quát của con người bình thường
khó có th quản lý hết được! Ấy là không kể đến một số loại d liệu đặc biệt;
chúng đòi hi được quản lý tốt không phải vì kích thước mà vì sự phức tạp ca
bản thân chúng tổ chức xử lý dữ liệu một cách khoa học đòi hỏi con người sử
dụng cơ sở dữ liệu.
Chính vì thế em đã chọn hệ quản trị sở dữ liệu Oracle để xây dựng hệ
thống bán hàng tại công ty VINDA làm đồ án tốt nghiệp.
Em xin chân thành cám ơn đến Tiến sĩ Nguyễn Ngọc Bình người đã trực tiếp
ớng dẫn, động viên để em hoàn thành đồ án, tạo điều kiện để em thực hiện
đồ án đúng thời gian.
Cám ơn các anh chị trong công ty VINDA đã tận tình giúp đỡ tạo điều kiện đ
đồ án được hoàn thành.
Vì thời gian có hạn đồ án chắc còn nhiều thiếu xót, nh mong quý thầy cô,
c bạn đóng góp ý kiến để đồ án hoàn thiện hơn.
Thành phHồ Chí Minh, 21-5-2003
SVTH: Đỗ Hữu Bá
Đồ Án Tốt Nghiệp GVHD:TS Nguyễn Ngọc Bình
SVTH: Đỗ Hữu Bá Trang 2
PHẦN MỘT
Chương I. CƠ SỞ THUYẾT ............................................................ 2
I. Lịch sử ORACLE ..................................................................................... 2
II. Cơ sở dữ liệu ORACLE trong kiến trúc CLIENT/SERVER .................... 4
III. Hệ quản trị Cơ s dữ liệu Quan hệ ORACLE8 SERVER ....................... 4
IV. Các sản phẩm kết nối mạng .................................................................... 5
V. Các công cụ phát triển CLIENT/SERVER............................................... 5
Chương II: CẤU TRÚC ORACLE ........................................................ 7
II.1 Lớp vật lý của ORACLE ....................................................................... 7
II.2 Cấu trúc bộ nhớ và các quá trình ........................................................... 11
II.3 Transaction, Commit, Rollback ............................................................ 13
II.4 Các tác vụ khi tạo và chấm dứt ........................................................... 13
II.5 Bảo mật cơ sở dữ liệu ........................................................................... 14
Chương III. ORACLE VÀ MÔ HÌNH MẠNG.
I. Tổng quan về Net8 ................................................................................... 20
II. Các khái niệm và kiến trúc mạng của Oracle .......................................... 21
III. Kiến trúc ca Net8................................................................................. 21
IV. Môi trường mạng .................................................................................. 21
Chương IV. ORACLE CẤU HÌNH MẠNG
I. Service và những chức năng phục vụ của Oracle ...................................... 24
II. Tổng quan về các cấu hình kết nối của Oracle ........................................ 24
III. Net8 và nền giao tiếp mạng trong suốt ................................................... 25
IV. Các tầng giao tiếp .................................................................................. 25
Chương V. NGÔN NGỮ PL/SQL
I. Tổng quan về PL/QL ............................................................................... 31
II. Cu trúc chương trình PL/SQL ............................................................... 31
Chương VI. PHƯƠNG PHÁP LUẬN PHÂN CH THIẾT KẾ HỆ
THỐNG
I. Phương pháp phân tích hệ thống về chức năng ......................................... 34
II. Phương pháp phân tích hệ thống về dữ liệu............................................. 36
III. Phương pháp thiết kế hệ thống .............................................................. 37
CHƯƠNG VII. GIỚI THIỆU ORACLE DEVELOPER 6.0
I. FORM BUIDER ..................................................................................... 37
II. REPORT BUIDER ................................................................................. 39
III. GRAPHICS BUIDER ........................................................................... 39
IV. QUERY BUIDER ................................................................................. 40
V. SCHEMA BUIDER ............................................................................... 41
PHẦN HAI
I. Khảo sát hiện trạng .................................................................................. 42
II. Phân tích hệ thống .................................................................................. 44
II.1 Phân tích hệ thống về chức năng ........................................................... 44
II.2 Phân tích hệ thống về dữ liệu ................................................................ 61
II.3 Thiết kế hệ thống .................................................................................. 67
III. Kết luận hướng phát triển đồ án ............................................................. 83
i liệu tham kho
Đồ Án Tốt Nghiệp GVHD:TS Nguyễn Ngọc Bình
SVTH: Đỗ Hữu Bá Trang 3
PHẦN MỘT
Chương I:CƠ SỞTHUYẾT
I. LỊCH SỬ ORACLE.
Vào năm 1977, Larry Ellison, Bob Miner, Ed Oates thành lp một công ty
đặt tên Relation Software Incorporated(RSI). Công ty y y dng một
hệ quản trị sở dữ liệu gi là Oracle. Ellison, Miner và Oates quyết định pt
triển hệ này bng C và giao tiếp SQL. Ngay sau một thời gian ngắn, hđưa ra
phiên bn mt như một nguyên mẫu. Năm 1979, RSI phân phối sản phẩm đu
tiên cho kch hàng: hệ qun trị sở dữ liệu Oracle phiên bản 2, làm việc trên
Digital PDP-11 chy h điều hành RSX-11 ngay sau đó chuyển sang hệ
thống DEC VAX.
Năm 1983 phiên bn 3 được giới thiệu với những thay đi trong ngôn ng
SQL. Không như các phiên bản trước đây , phiên bản 3 được viết toàn bbằng
C. Vào thời điểm này , RSI được đổi tên thành Oracle Corporation.
Phiên bản 4 được pt hành vào năm 1984. Phiên bản 5 được giới thiệu vào
năm 1985, mốc lịch sử vì đưa công nghệ Client/ Server vào thtrường
với việc sử dụng SQL*Net.
Năm 1988, Oracle đưa ra phiên bản 6, giới thiệu việc khoá ở mức thấp. Oracle
7 được phát hành năm 1992 bao gồm nhiều thay đi kiến trúc về bộ nhớ, CPU
tiện ích xuất /nhập. m 1997 Oracle giới thiệu Oracle8, thêm phần mở
rộng đi tượng cũng như nhiều nh năng và công c quản trị mới đặc biệt
Oracle 8i phiên bản hỗ trợ nhiều tính năng mới đặc biệt là các ng dụng cơ
sở dữ liệu Internet.
I.1. ORACLE VÀ CÔNG NGHỆ CLIENT/ SERVER.
Oracle Corporation trthành một ng ty sdữ liệu ni tiếng nh to ra
một hệ thống qun trị sở dữ liệu quan hệ kiểu Server với hiệu suất cao và
đầy đủ chức năng .Oracle đã vượt qua tầm vóc của một công ty sở d liệu
khi bsung hệ quản trị cơ sở dữ liệu quan hkiểu Server ca những sản
phẩm tích hợp cao được thiết kế đặc biệt choc ứng dụng xử dữ liệu phân
tán và công ngh Client/ Server.
II.CƠ SỞ DỮ LIỆU ORACLE TRONG KIẾN TRÚC CLIENT/SERVER.
Oracle Corporation đã tr thành người dẫn đầu khi đưa ra công ngh
Client/Server tiên tiến, định hướng phát triển sản phẩm đặc trưng theo hướng
htrợ thiết kế, cài đặt quản các hệ thng sở dữ liệu Client/Server.
Orcale đã thiết kế các sản phẩm theo một trong ba thành phần chủ yếu của
kiến trúc Client/Server:
Một hệ s dữ liệu quan hệ server hiệu suất cao, đủ nh năng, thích
ứng cho các chủng loại, từ các máy tính xách tay( laptop, notebook) cho
đến các máy mainframe.
S phát triển client và các sản phẩm run-time htrợ nhiều i trường
GUI
Các phần trung gian kết nối sở dữ liệu cung cấp sự giao tiếp bảo mật
hiệu qutrên nhiều lọai hình giao thc mạng. c sản phm Oracle
tính thích ng cao, cung cp các giải pháp Client/Server trọn vẹn cho cho
các môi trường ứng dụng từ các nhóm làm việc nhỏ đến các i tờng
công ty
Đồ Án Tốt Nghiệp GVHD:TS Nguyễn Ngọc Bình
SVTH: Đỗ Hữu Bá Trang 4
III. H QUẢN TRỊ SỞ DỮ LIỆU QUAN H ORACLE 8
SERVER.
Ngôn ngPL/SQL: Mt thành phần chính của Oracle8 Server là engine
xlý PL/SQL. PL/SQL là ngôn ngthế hthứ của Oracle, kết hợp các
nguyên tngôn ngthủ tục có cấu trúc với SQL. PL/SQL được thiết kế đặc
thù đ xử client/server, trong đó nó cho phép một khối chương trình
PL/SQL chứa logic ứng dụng như các lệnh SQL đđtrình đến Server với
một yêu cầu đơn. Khi sử dụng PL/SQL th giảm một cách đáng kể khối
lượng xử yêu cầu bởi phần Client ca ứng dụng và slưu chuyển trên
mng để thực hiện phần logic.
Các Stored procedure: Vic xử dụng các stored procedure tăng đáng kể
hiệu quả của hệ thống Client/Server vì các lý do sau:
Gọi một stored procedure từ một ứng dng Client giảm đáng kể mật đ
lưu thông trên mạng.
Các stored procedure cung cấp một cơ chế bảo mật hiệu quả và tiện lợi.
C hai dạng text và đã biên dịch của các stored procedure đều nm
trong sdliệu. Do dng biên dịch của thủ tục sẵn và sẵn sàng thực
hiện, nhu cu phân tích pháp và biên dịch PL/SQL c thi hành được
giảm nhẹ.
Database trigger: Các trigger cơ sdliệu giống như các stored procedure
chỗ chúng là các khối PL/SQL thường trú trong cơ sở dữ liệu.
Tính toàn vẹn có thể khai báo
Khi ta định nghĩa một bảng trong Oracle, các ràng buc toàn vẹn như một
phần của định nghĩa bảng. c ng buc được hỗ trợ bởi Server khi một bản
ghi được chèn, sữa đổi hay xoá.
Tính toàn vẹn được hỗ trợ bởi Server làm s mã yêu cầu đ kiểm tra bên
client và cũng tăng sức mạnh của hình giao dịch được định nghĩa bên trong
cơ sở dữ liệu.
Các User-defined function: Các user- defined function cũng tương tự các
stored procedure.
IV. CÁC SẢN PHẨM KẾT NỐI MẠNG.
Net8: một phn mềm kết nối cơ sở dữ liệu dùng đcung cấp các thông
tin cơ sdliệu xác thực, tối ưu trên mọi thủ tục mạng thông dụng.
Oracle Names: Tạo các liên kết sở dữ liệu chứa các thông tint mạng
trên một mạng bằng cách sử dụng từ điển toàn cục chung Oracle Names.
Multi- protocol Interchange: cung cấp một nhu cu giao tiếp trên các th
tc khác biệt bằng cách gửi thông điệp SQL* Net tth tục này sang th
tc khác.
Oracle Network Manager: Quản cấu hình quản mng sở d
liệu phân tán được thực hiện dễ dàng vi Network Manager. Network
Manager được sử dụng không chỉ đquản từ điển Oracle Names mà còn
tạo ra các file cu hình cho các thành phn Client/Server của SQL*Net và
định nghĩa cho các đường kết nối cho các nút Multi-Protocol Interchange.
Đồ Án Tốt Nghiệp GVHD:TS Nguyễn Ngọc Bình
SVTH: Đỗ Hữu Bá Trang 5
V. CÁC CÔNG C PHÁT TRIỂN CLIENT/SERVER.
1. Các hệ Server:
Oracle Unisersal Server có các thành phần tùy chọn:
Distributed Option:(Tùy chọn phân tán) cho pháp một s sở dữ liệu
Oracle trên các máy tính khác nhau hoạt đng như một sở dliệu logic
đơn.
Replication Option(Tùy chọn sao lưu): cho phép một cơ s d liệu
Oracle sao chép sự thay đi lên một cơ s dữ liệu kc.
Context Option(Tùy chn ngữ cảnh): mở rộng kh năng cho phép
người dùng tìm nội dung của một sdữ liệu Oracle theo các từ khóa và
các chủ đề nhất định.
Spatial Data Option(Tùy chọn không gian dữ liệu) cho phép một nhà
thiết kế lựa chọn tạo ra các ch mục đặc biệt hỗ trợ các query tạm thời,
không gian tinh vi và các query khác.
Oracle Workgroup Server: được thiết kế cho các nhóm làm việc, có các
bản cho Netware, Window NT, SCO UNIX và Unix Ware. Oracle
Workgroup Server là một giải pp có tính bảo trì nh kinh tế để hỗ trợ
các nhóm nhỏ người dùng.
Persernal Oracle: Là phiên bn chạy trên Windows engine của cơ sở dữ
liệu Oracle có đủ các chức năng như Oracle Universal Oracle và Oracle
Workgroup Server.
Designer 2000: phát triển các ứng dụng Oracle.
Developer/2000, Develper 6.0, Jdeveloper for Oracle 8i: Các bộ Developer
y gồm Oracle form, Report, Graphics, và Oracle Procedure Builder được
tích hp vào môi trường phát triển
Power Object: cung cấp môi trường phát triển ứng dụng nhanh với các đặc
trưng kéo thả và qun lý các toàn tác cơ sở dữ liệu tự động.
2.CÁC NG DỤNG
2.1 Các ứng dụng Oracle truyn thống
Tài chính.
Nhân sự.
Quản lý dự án.
Bán hàng.