I. HƯỚNG DẪN CÀI ĐẶT VÀ SỬ DỤNG CƠ BẢN ORACLE 11G ............................................... 1. Giới thiệu về Oracle Database ....................................................................................................... a. Thị trường.................................................................................................................................... b. Những thành tựu đạt được......................................................................................................... c. Sản phẩm ..................................................................................................................................... d. Những phát triển gần đây .......................................................................................................... e. Lịch sử phát triển của Oracle .................................................................................................... f. Ưu điểm của Oracle:................................................................................................................. g. Nhược điểm của Oracle ............................................................................................................ 2. Cài đặt Oracle 11g ........................................................................................................................ a. Yêu cầu cài đặt .......................................................................................................................... b. Tiến hành cài đặt....................................................................................................................... 3. Kiểm tra việc cài đặt và các cài đặt mở rộng.............................................................................. 4. Cài đặt tool công cụ, SQL developer ........................................................................................... 5. Thực hiện kết nối Client – Server................................................................................................ II. Ngôn ngữ SQL............................................................................................................................... 1. Giới thiệu ....................................................................................................................................... 2. Phân loại ........................................................................................................................................ a. Ngôn ngữ định nghĩa dữ liệu (DDL– Data Definition Language) ........................................... b. Procedure, Trigger, Transaction ............................................................................................. 3. Procedure (Thủ tục)...................................................................................................................... 4 Trigger ........................................................................................................................................... 5 Transaction.................................................................................................................................... 6. Sequence......................................................................................................................................... 7. Index............................................................................................................................................... III. Các biện pháp bảo vệ CSDL Oracle............................................................................................ 1. Quản lý người dùng ...................................................................................................................... 2. Các bước thực hiện khi tạo mới người dùng .............................................................................. 3. Tạo mới người dùng...................................................................................................................... IV. Hướng dẫn kết nối Oracle trên C.............................................................................................. 1. Cách 1 (kết nối C) ....................................................................................................................... 2. Cách 2 (proc) ................................................................................................................................. V. Tài liệu tham khảo ............................................................................................................................
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM
KHOA CÔNG NGHỆ THÔNG TIN
Trang 2NHẬN XÉT CỦA GIÁO VIÊN
TP.HCM, Ngày … Tháng… Năm…
Giáo viên
Trang 3Mục Lục
I HƯỚNG DẪN CÀI ĐẶT VÀ SỬ DỤNG CƠ BẢN ORACLE 11G 5
1 Giới thiệu về Oracle Database 5
a Thị trường 5
b Những thành tựu đạt được 6
c Sản phẩm 7
d Những phát triển gần đây 8
e Lịch sử phát triển của Oracle 9
f Ưu điểm của Oracle: 11
g Nhược điểm của Oracle 12
2 Cài đặt Oracle 11g 12
a Yêu cầu cài đặt 12
b Tiến hành cài đặt 12
3 Kiểm tra việc cài đặt và các cài đặt mở rộng 24
4 Cài đặt tool công cụ, SQL developer 25
5 Thực hiện kết nối Client – Server 25
II Ngôn ngữ SQL 30
1 Giới thiệu 30
2 Phân loại 30
a Ngôn ngữ định nghĩa dữ liệu (DDL– Data Definition Language) 30
b Procedure, Trigger, Transaction 43
3 Procedure (Thủ tục) 44
4 Trigger 50
5 Transaction 54
6 Sequence 54
7 Index 56
III Các biện pháp bảo vệ CSDL Oracle 57
1 Quản lý người dùng 57
2 Các bước thực hiện khi tạo mới người dùng 58
3 Tạo mới người dùng 58
IV Hướng dẫn kết nối Oracle trên C# 70
1 Cách 1 (kết nối C#) 70
2 Cách 2 (proc) 71
Trang 4V Tài liệu tham khảo 73
Trang 5I HƯỚNG DẪN CÀI ĐẶT VÀ SỬ DỤNG CƠ BẢN ORACLE 11G
1 Giới thiệu về Oracle Database
a Thị trường
Được thành lập vào năm 1977, hãng phần mềm Oracle tự hào kỉ niệm 30 năm trong việc trợ giúp nhiều công ty và chính phủ trong việc quản lí tài sản quí giá nhất của họ - đó chính là thông tin Với lợi nhuận hằng năm hơn 14.7
tỉ đô, Oracle cung cấp phần mềm cơ sở dữ liệu, phần trung gian giữa phần mềm và hệ thống ứng dụng và những sản phẩm ứng dụng mang lại sự hoàn thiện trong kinh doanh và quá trình tự động hóa Với những sản phẩm của Oracle, các công ty có thể đổi mới và gia tăng khả năng cạnh tranh trong ngành kinh doanh của họ
Với văn phòng chính tại Redwood Shores, bang California, công ty đã cho
ra mắt cơ sở dữ liệu đầu tiên trên thế giới vào năm 1977 Từ đó, Oracle đã trở thành một phần quan trọng của cuộc cách tân kĩ thuật đã thay đổi nền kinh doanh hiện đại
Gần đây, thị trường bao gồm các công ty nhỏ cung cấp cho những ngành kinh doanh và sản phẩm ứng dụng đặc biệt cũng như một vài công ty lớn cung cấp những phần mềm dữ liệu hay sản phẩm ứng dụng cho doanh nghiệp Nhiều công ty gặp khó khăn trong việc kết hợp những kĩ thuật riêng biệt này, do vậy
họ thất bại bởi sự gia tăng các chi phí, giới hạn khả năng và tổn hại đến sự bảo mật thông tin của chính họ Oracle đã mang lại trật tự cho sự đảo lộn này bằng việc cung cấp những giải pháp dựa trên các tiêu chuẩn công nghiệp đã được công nhận
Mục đích chung của tất cả công ty phần mềm đó là đáp ứng nhu cầu cho khách hàng với những giải pháp mang tính đột phá cho những vần đề trong kinh doanh Oracle đã xuất sắc với nỗ lực này, và tính đổi mới của công ty luôn
là thí dụ điển hình Cho dù là đẩy mạnh những kĩ thuật về mã nguồn mở, kết hợp phần mềm với tất cả sản phẩm hay thiết lập phương thức kinh doanh tốt
Trang 6nhất, Oracle luôn đặt ra một tiêu chuẩn cao đối với những đổi mới trong kinh doanh, sáng tạo phần mềm và luôn đáp ứng nhu cầu của khách hành
b Những thành tựu đạt được
Yếu tố trọng tâm trong kinh doanh của Oracle là thông tin – làm thế nào để quản lí, sử dụng, chia sẻ và bảo vệ thông tin một cách có hiệu quả.Trong 30 năm qua, Oracle đã cung cấp các phần mềm và dịch vụ nhằm giúp cho các doanh nghiệp tiếp cận, nắm giữ, quản lý thông tin, có tính chính xác nhất từ hệ thống kinh doanh của họ
Oracle giúp cho các doanh nghiệp sử dụng thông tin chất lượng cao để kết hợp, đo lường các kết quả và truyền một cách chính xác nhất đến tất cả các cổ đông Công ty cũng cải tiến kĩ thuật trong nhiều năm bằng việc kết hợp tính sáng tạo của những kĩ sư phần
mềm giỏi nhất trong nghành với
những phản hồi từ 500 khách
hàng của tạp chí Fortune – kết quả
là sự ra đời của những đổi mới hỗ
Trang 7c Sản phẩm
Vị trí dẫn đầu của Oracle là kết quả của một loạt cách tân kĩ thuật và những sản phẩm chất lượng cao Oracle luôn đứng đầu bằng việc tập trung đơn giản hóa hệ thống IT và cung cấp những giải pháp toàn diện - cơ sở dữ liệu, phần mềm trung gian, phần mềm ứng dụng cũng như cho phép khách hàng nhận được thông tin và quản lý thông tin một cách hiệu quả trong khi lại sử dụng ít hơn
Oracle Database, phần mềm cơ sở dữ liệu quan trọng nhất của hãng là cơ
sở dữ liệu quan hệ đầu tiên được thiết kế dành cho mạng vi tính và giúp đảm bảo khả năng lưu trữ, an toàn Nó được thiết kế nhằm giảm toàn bộ chi phí cho người sở hữu thông qua hệ thống quản lí tự động trong khi cung cấp dịch vụ
có chất lượng cao nhất Gần đây, phần mềm Oracle Database là lựa chọn đáng tin cậy đối với nhiều doanh nghiệp lớn, trung bình và nhỏ cũng như các văn phòng chính phủ
Khi các doanh nghiệp cố gắng phá vỡ những rào cản giữa những thông tin, phần mềm Oracle Fusion Middleware mang đến một cấu trúc phần mềm kết hợp liền mạch toàn diện nhất Oracle Fusion Middleware kết hợp chặt chẽ các phần mềm đạt tiêu chuẩn, bán chạy nhất của hãng như Oracle Application Server, Oracle Collaboration Suite, Oracle Data Hubs, Oracle Developer Tools, Oracle Identity Management, Oracle Business Integration và Oracle Business Intelligence Bộ sản phẩm này cung cấp sự hỗ trợ toàn diện cho sự phát triển, triển khai và quản lí những ứng dụng thiên về dịch vụ
Khi mà phần mềm middleware ngừng họat động và quá trình kinh doanh lại bắt đầu hoạt động thì phần mềm ứng dụng Oracle Applications đóng vai trò quan trọng Bằng việc kích hoạt các quá trình bị chi phối bởi thông tin mà các quá trình này lại liên kết và tự động hóa toàn bộ họat động kinh doanh, Oracle Applications mang lại những chức năng và thông tin thương mại hoàn thiện
mà các công ty cần phải cạnh tranh và giành thắng lợi Phần mềm Oracle’s PeopleSoft Enterprise, Oracle’JD Edwards EnterpriseOne và JD Edwards
Trang 8World và Oracle’s Siebel – kết hợp phạm vi và sức mạnh của một tính năng hoàn hảo, đánh dấu một bước chuyển mới trong quá trình phát triển của lĩnh vực phần mềm
Các lĩnh vực khác nhau thì co những nhu cầu khác nhau Dựa trên những ý kiến chuyên môn và chức năng đặc biệt trong từng lĩnh vực, Oracle Applications chú tâm vào những thử thách và quá trình đặc biệt thúc đẩy sự đa dạng của các lĩnh vực kinh doanh ngày nay Mới đây, Oracle vừa thực hiện nhiều vụ mua bán chiến lược để gia tăng các loại hình sản phẩm Do vậy, các nhà bán lẻ, nhà sản xuất, công ty truyền thông và công ty dịch vụ tài chính là một trong nhiều ngành kinh doanh sẽ kiếm được lợi ích từ những sản phẩm của Oracle
d Những phát triển gần đây
Khi dây chuyền sản phẩm của công ty tiếp tục phát triển và được cải tiến thì kĩ thuật cơ bản và các dịch vụ hỗ trợ cũng được phát triển theo Sản phẩm Oracle Fusion - nền hệ thống phần mềm thế hệ mới – là bước đi hợp lí tiếp theo trong nhiệm vụ liên kết mọi cấp độ kỹ thuật được sử dụng trong doanh nghiệp Oracle Fusion là phần mềm kết hợp cơ sở dữ liệu, middleware và phần mềm ứng dụng với nhau nhằm giúp cho khách hàng tiếp cận các thông tin mà
họ mong muốn để thích ứng với các điều kiện của thị trường với tốc độ nhanh nhất
Để chuẩn bị phát triển sản phẩm Oracle Fusion,
công ty đã tạo ra một bộ
công cụ Oracle Fusion và
cho ra mắt danh sách những
Trang 9Công ty cam kết là sẽ cho ra mắt phiên bản kế tiếp của PeopleSoft và JD Edwards trong khi vạch rõ kế hoạch cho những giải pháp trong nhiều lĩnh vực như quản lí tài chính, quản lí nguồn nhân lực, quản lí chuỗi cung cấp và quản
lý quan hệ khách hàng, Những giải pháp của hãng Oracle trong những lĩnh vực này đại diện cho tính năng tốt nhất của danh mục sản phẩm từ hãng và cung cấp cho khách hàng nhiều giải pháp nhằm đáp ứng nhu cầu mà doanh nghiệp cần đến
Với một bước đi tốt hơn trong lĩnh vực phần mềm doanh nghiệp, Oracle ra mắt một chính sách hỗ trợ suốt đời nhằm đảm bảo khách hàng có thể nâng cấp thời gian biểu và thay đổi nhịp độ của chính họ Bên cạnh đó, Oracle vừa nhận giải thưởng từ công ty tiếp thị tin học J.D.Power and Associates vì những dịch
vụ và hỗ trợ xuất sắc, một công ty hàng đầu trong những công ty phần mềm
e Lịch sử phát triển của Oracle
1978 Phiên bản Oracle v1 đầu tiên, chạy trên hệ điều hành PDP-11 của máy RSX (dòng của hãng DEC), khả năng sử dụng bộ nhớ tối đa là 128 KB Viết bằng ngôn ngữ Assemblỵ Oracle V1 chỉ được sử dụng trong nội bộ công ty, không được phát hành ra bên ngòai
1980 Phát hành phiên bản Oracle v2 – Đây cũng là hệ cơ sở dữ liệu thương mại đầu tiên sử dụng ngôn ngữ SQL Phiên bản này vẫn được viết bằng Assembly cho PDP-11, tuy nhiên, nó còn chạy được trên Vax/VMS
1982 Phát hành Oracle v3 released, Oracle trở thành DBMS đầu tiên chạy trên các máy mainframes, minicomputers, và PC’s (portable codebase) Phiên bản Oracle đầu tiên thể làm việc theo “transactional”
Oracle v3 được viết bằng C
1983 Relational Software Inc đỗi tên thành Oracle Corporation
1984 Phát hành Oracle v4, giới thiệu tính năng “read consistency”, có thể chạy trên nhiều Hệ Điều Hành, và cũng là phiên bản đầu tiên chạy theo mô hình PC – Server
Trang 101986 Phát hành Oracle v5 Thực sự là CSDL client/server, hổ trợ cluster trên VAX CSDL đầu tiên sử dụng truy vấn dữ liệu phân tán (distributed queries)
1988 Phát hành Oracle v6 Giới thiệu ngôn ngữ PL/SQL, Oracle cũng giới thiệu sản phẩm ứng dụng sử dụng CSDL Oracle – Oracle Financial Applications
1989 Phát hành Oracle v6.2 với tính năng chạy song song – Oracle Parallel Server
1992 Phát hành Oracle v7 chạy trên UNIX
1993 Phát hành bộ công cụ phát triển ứng dụng – Oraclés Cooperative Development Environment (CDE) Giới thiệu “Oracle Industries” và “Oracle Media Server”
1994 Phát hành Oracle v7.1 và Oracle v7 trên máy PC
1997 Phát hành Oracle8, giới thiệu Cơ sở Dữ liệu Hướng Đối Tượng – object-relational
1998 Phát hành phiên bản trên Intel Linux
1999 Phát hành Oracl8i (i = internet), tích hợp với máy ảo Java – JVM
2000 Phát hành Oracl8i Release 2
Ngòai Oracle Database, Oracle còn phát triển bộ sản phẩm ứng dụng cho doanh nghiệp – ERP Phát hành Oracl9i Application Server, đây là một sản phẩm thuộc lớp giữa (midle tier)
2001 Phát hành Oracl9i Release 1 với tính năng Cluster (RAC) và Advanced Analytic Service
2002 Phát hành Oracl9i Release 2
2004 Phát hành Oracle10g Release 1 (g = grid)
Trang 11f Ưu điểm của Oracle:
Nhiều người cho rằng Oracle chỉ sử dụng cho những Doanh Nghiệp (DN) lớn nên không thích hợp ở Việt Nam Điều này, theo tôi, là hoàn toàn sai lầm Oracle không chỉ nhắm tới những DN lớn mà còn nhắm tới những
DN trung bình và cho cả những DN nhỏ Cụ thể là Oracle Server có đủ các phiên bản thương mại từ Personal, Standard đến Enterprise (ngoài ra còn
có Oracle lite nữa)
- Về phía các DN: Oracle tỏ ra rất có ưu điểm như tính bảo mật cao, tính
an toàn dữ liệu cao, dễ dàng bảo trì-nâng cấp, cơ chế quyền hạn rỏ ràng,
ổn định…
Oracle cũng không quá đắc như các bạn nghĩ, nếu DN đã từng mua lisence của MSSQLServer thì sẽ thấy giá của Oracle cũng không chênh lệch là bao thậm chí còn rẻ hơn (xem phần so sánh giá), nhưng lợi ích có được lại rất lớn
- Về phía những nhà phát triển: Oracle cũng tỏ ra rất có ưu điểm như dễ cài đặt, dễ triển khai và dễ nâng cấp lên phiên bản mới
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 Oracle, ngoài các kiểu dữ liệu thông thường còn có các kiểu dữ liệu đặc biệt khác góp phần mang lại sức mạnh cho Oracle như Blob, clob, Bfile…
Nếu bạn chỉ chạy thử, bạn cũng không cần lo đến vấn đề lisence vì có thể download từ trang của Oracle (technet.oracle.com)
- Ngoài ra, bạn có thể triển khai Oracle trên nhiều OS khác nhau (Windows, Solaris, Linux…) mà không cần phải viết lại PL/SQL code
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
Trang 12bấ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 đó)
g Nhược điểm của Oracle
- Hệ thống chính sách cứng nhắc đối với các đối tác phát triển thứ 3 và các thỏa thuận dịch vụ Đây là một điểm đáng cân nhắc đối với giải pháp của Oracle
- Hệ thống lõi OBIEE không có nhiều cải tiến so với phiên bản cũ
- Chi phí cao cho các dịch vụ bảo trì và hỗ trợ
- Thách thức cho việc phát triển các dự án yêu cầu nhiều tùy biến, thay đổi; đặc biệt đối với các giải pháp được đóng gói sẵn
Trang 13- Bước 1: Nhấn chuột phải vào file Setup.exe chọn Troubleshoot compatibility
- Bước 2: Chọn Try recommended settings
Trang 14- Bước 3: Chọn start the program
- Trước khi tiến hành cài đặt, Oracle Universal Installer (OUI) kiểm tra khả
năng tương thích của hệ điều hành
Trang 15- Bước 4: Chọn Next để chương trình tự đi tiếp
- Bước 5: Chọn I accept the license agreement -> Next
Trang 16- Bước 6: Check vào “Oracle Database 11g Express Edition” Bạn có thể chọn
Browse… để chọn nơi cài đặt, sau đó chọn Next để tiếp tục
- Bước 7: Điền password theo ý của bạn, lưu ý phải nhớ mật khẩu để đăng
nhập sau này Chọn Next để tiếp tục
Trang 17- Bước 8: Chọn Install để tiếp tục tiến trình cài đặt
- Bước 9: Quá trình cài đặt sẽ diễn ra trong vòng 30p đến 1h tuỳ máy có cấu
hình mạnh Sau khi cài xong chọn Close để kết thúc
Trang 18Điều đó có nghĩa là sau khi cài đặt phần mềm Oracle xong, chúng ta có thể tạo một hoặc nhiều Database Như hình minh họa dưới đây, chúng ta cài phần mềm Oracle được, và tạo 2 database được tạo ra có tên lần lượt là Db11g và Orcl Các tên của Database còn được gọi là SID (Bạn có thể đặt tên database theo cách của mình)
Tiến trình cài đặt
Nếu bạn giải nén 2 file zip bộ cài của Oracle ra 2 thư mục, và cài đặt từ file setup trong thư mục 1 Trong quá trình cài nó sẽ đòi hỏi bạn trỏ vào vị trí của thư mục 2 để cài tiếp
Trang 19Chúng ta sẽ cài cả phần mềm Oracle và tạo luôn một Database có tên db11g (hay SID = db11g)
Với mục đích học tập hoặc với các công ty nhỏ, chọn: Desktop class
Trang 20Để có thể lưu trữ được nhiều loại ngôn ngữ (bao gồm cả tiếng Việt), bạn nên chọn: Unicode (AL32UTF8)
- Character Set: Unicode (AL32UTF8)
- Global database name: db11g (Bạn có thể chọn một cái tên khác, đây
là tên của database, hoặc còn gọi là SID)
Trang 21Và chờ đợi cho tới khi việc cài đặt thành công
Tới đây việc cài Oracle thành công Các thông số liên quan tới cơ sở dữ liệu được tổng kết lại, bạn nên nhớ các thông tin này
Trang 22Bước tiếp theo bộ cài đặt sẽ tạo Database có tên db11g như bước trước chúng ta đã đặt tên
Trang 23Thông tin tổng kết sau khi việc cài đặt thành công
Trang 24Nếu window hiển thị lên cảnh báo chặn hoạt động của Oracle hay không, bạn nhấn
vào "Allow access" để cho phép oracle hoạt động
3 Kiểm tra việc cài đặt và các cài đặt mở rộng
Sau khi cài đặt thành công, các service của Oracle tự động được Start Chúng ta có thể vào Service của Windows để kiểm tra Có 7 service của
Oracle, để chạy thông thường chỉ cần có 3 service là đủ:
- OracleDBConsole <sid>
- OracleOra <Sid>_home1TNSListener
- OracleService <SID>
Trang 254 Cài đặt tool công cụ, SQL developer
Sau khi down công cụ về, giải nén ra và chọn file sqldeveloper.exe để chạy bình thường
5 Thực hiện kết nối Client – Server
Ở phía máy server (máy chứa cơ sở dữ liệu) thực hiện thay đổi 2 file
listener.ora và tnsnames.ora
(C:\Oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN tùy theo máy, lưu
ý chạy bằng quyền Administrator) như thư mục Config2 trong
CauHinhClientServer (Thư mục phụ lục) để chỉnh Ip và Port kết nối Lưu ý 2 máy phải trong cùng một mạng Lan hoặc Wireless
Ở phía Client yêu cầu máy cũng phải cài hệ quản trị cơ sở dữ liệu Oracle hoặc Oracle Client
Trang 26- Bước 2: Trước tiên bạn lấy địa chỉ IP của máy chủ trước, bạn vào
Start->chọn CMD.exe-> gõ lệnh Ipconfig rồi enter
Trang 27- Bước 3: sữa file cấu hình trong Oracle, listener.ora
C:\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN, chọn
file listener.ora Thêm vào dòng lệnh:
(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST
= 192.168.0.116)(PORT = 1521)) )
HOST= địa chỉ IP ta vừa lấy
Trang 28- Bước 5: sữa file cấu hình trong Oracle, tnsnames.ora
C:\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN, chọn file tnsnames.ora Thêm vào dong lệnh:
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.116)(PORT =1521))
Trang 29- Bước 6: Việc cấu hình máy chủ đã xong, tiếp theo bạn chạy chương trình share wifi ở bước 1
- Bước 7: Ping địa chỉ IP của máy chủ từ máy khách: Vào CMD gõ lệnh Ping 198.162.0.116 rồi enter (198.162.0.116 IP máy chủ)
- Bước 8: Mở Visual studio 2010 lên, xong viết code kết nối tới cơ sở
dữ liệu ở máy khách, sữa lại phần khai báo như hình
Trang 30- Bước 9: Build lại chương trình và chạy.
Trang 31 Cú pháp tạo Table:
CREATE [GLOBAL TEMPORARY] TABLE [tên_schema.]tên_table ( tên_cột kiểu_cột [DEFAULT biểu_thức_mặc_định][Các_ràng_buộc_trên_cột] [,tên_cột kiểu_cột [, ]] [, Các_ràng_buộc_trên_bảng] ) ;
Các ràng buộc (RB) trên cột có thể bao gồm một hoặc nhiều loại sau:
[CONSTRAINT tên_ràng_buộc] {UNIQUE|PRIMARY KEY}
[CONSTRAINT tên_ràng_buộc] CHECK(điều_kiện_kiểm_tra) [CONSTRAINT tên_ràng_buộc] [NOT] NULL [CONSTRAINT tên_ràng_buộc] REFERENCES tên_bảng [(các_cột_khóa_tham_chiếu)] [ON DELETE {CASCADE|SET
NULL}]
Các ràng buộc trên bảng có thể bao gồm một hoặc nhiều loại sau CONSTRAINT tên_ràng_buộc {UNIQUE|PRIMARY KEY}(tên_cột
[,tên_cột ]) CONSTRAINT tên_ràng_buộc CHECK(điều_kiện_kiểm_tra)
CONSTRAINT tên_ràng_buộc FOREIGN KEY (danh_sách_cột)
REFERENCES tên_table [(các_cột_khóa_tham_chiếu)] [ON DELETE
{CASCADE|SET NULL
Kiểu dữ liệu:
VARCHAR2(n) Dữ liệu kiểu ký tự, n<=4000
CHAR(n) Dữ liệu kiểu ký tự, kích thước cố đinh, n<=2000 NUMBER Kiểu số nguyên, số ký số tối đa là 38 ký số
NUMBER(p) Kiểu số nguyên, với số ký số tối đa là p
NUMBER(p,s) Kiểu số thực, tối đa p ký số, s số thập phân p≤38,
-84 ≤ s ≤ 127.Ví dụ: số 7456123, khai báo kiểu number (7, -2) = 7456100
DATE Kiểu ngày, lưu ngày từ 1/1/4712 BC ->
31/12/9999
Trang 32LONG Kiểu số nguyên
LONG RAW Chuỗi nhị phân dài tối đa 2GB
CLOB (Character Large Object) có độ dài ≤ 4GB
BFILE Chứa con trỏ chỉ đến một tập tin nhị phân ở ngoài
DB
Ví dụ: Cho lược đồ CSDL “quản lý đề án cty” như sau:
NHANVIEN (MaNV, HoNV, TenLot, TenNV, Phai, Luong, Phong, NgaySinh,
DiaChi, Ma_NQL)
PHONGBAN (MaPHG, TenPHG, TrPHG, NG_NhanChuc)
Câu lệnh để tạo một table nhân viên:
CREATE TABLE NHANVIEN(
MANV VARCHAR(10) NOT NULL,
Trang 33CREATE VIEW TrucThuoc
AS SELECT MANV, HONV, TENNV, TENPHG
FROM NhanVien, PhongBan
WHERE PHONG = MAPHG
AND PHONG = 5
Trang 34Ghi chú: tùy chọn Replace sẽ xóa view và tạo view mới nếu view đã tồn
tại rồi
Update view:
CREATE OR REPLACE VIEW view_name
AS SELECT columns FROM table
WHERE conditions;
Sửa cấu trúc bảng – Alter
Thêm thuộc tính:
ALTER TABLE tên_table ADD tên_cột kiểu_dữ_liệu
Ví dụ: thêm cột Ghi_chú vào table nhân viên
ALTER TABLE NHANVIEN ADD GHI_CHU varchar2(20)
Trang 35 Sửa kiểu dữ liệu thuộc tính:
ALTER TABLE tên_table ALTER COLUMN tên_cột kiểu_dữ_liệu_mới
Ví dụ: Sửa kiểu dữ liệu của cột Ghi chú
ALTER TABLE NHANVIEN ALTER COLUMN GHI_CHU varchar2(30)
Xóa thuộc tính:
ALTER TABLE tên_bảng DROP COLUMN tên_cột
Ví dụ: Xóa cột Ghi_chú từ bảng nhân viên
ALTER TABLE NHANVIEN DROP COLUMN GHI_CHU
Xóa ràng buộc toàn vẹn:
ALTER TABLE NHANVIEN1 DROP CONSTRAINT FK_NV_PB
Trang 36 Lệnh xóa bảng dữ liệu ràng buộc giữa các bảng
DROP TABLE tên_bảng [,tên_bảng] [CASCADE CONSTRAINTS]
CASCADE CONSTRAINTS: xóa các ràng buộc toàn vẹn liên quan đến các khóa
chính trong bảng Nếu bỏ qua từ khóa này và trong bảng có tồn tại các ràng buộc toàn vẹn liên quan đến các bảng khác, Oracle báo lỗi và không thực thi câu lệnh này