1. Trang chủ
  2. » Tất cả

Bài giảng hệ quản trị cơ sở dữ liệu chương 3 nguyễn thị mỹ dung

20 4 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Bài giảng hệ quản trị cơ sở dữ liệu chương 3 Nguyễn Thị Mỹ Dung
Tác giả Nguyễn Thị Mỹ Dung
Trường học Đại học L2
Chuyên ngành Hệ quản trị cơ sở dữ liệu
Thể loại Bài giảng
Định dạng
Số trang 20
Dung lượng 1,33 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tạo bảng Table_name Column_name Datatype [CONSTRAINT constraint_def DEFAULT default_exp] [, column_name type [CONSTRAINT constraint_def DEFAULT default_exp]...] [,table_constraint

Trang 1

Bài giảng

HQT Cơ sở dữ liệu

Số tc: 3; LT: 25; Btập: 20

GV: Nguyễn Thị Mỹ Dung

Khối lớp: Đại học L2

1

Trang 2

NỘI DUNG MÔN HỌC

1

2

3

4

Chương 1: Tổng quan về Oracle (2) Chương 2: Cơ bản về Oracle (2)

Chương 3: Truy vấn SQL (12)

Chương 4: Lập trình PL/SQL (9)

5

6

Chương 5: Procedure, Trigger, Function (12) Chương 6: Quản trị người dùng (4)

7 Chương 7: Kết nối CSDL với Oracle (4)

Trang 3

Chương 3: Truy vấn SQL

I Thao tác CSDL (tạo, sửa, xoá, thêm dữ liệu)

II Các câu truy vấn: Select, Insert, Update,

Delete

III Truy vấn lồng, gom nhóm, điều kiện gom

nhóm

IV Các hàm xử lý dữ liệu

V Bài tập thực hành

3

Trang 4

I Thao tác CSDL

1 Cho CSDL

Ví dụ: Cho các lược đồ quan hệ sau

 Sinhvien (MaSV, Hoten, Namsinh, QQ, Hocluc)

 Detai (MaDT, TenDT, Chunhiem, Kinhphi)

 SVDT (MaSV, MaDT, NoiAD, KQ)

Bảng dữ liệu mẫu như sau:

Sinhvien MaSv Hoten Namsinh QQ Hocluc

SV001 Thái Bình An 1983 Cần Thơ 7.5 SV002 Lê Văn Khang 1985 Vĩnh Long 7.1 SV003 Trần Đức Thịnh 1983 Đồng Tháp 8.1 SV004 Bùi Quốc Vượng 1984 Đồng Tháp 9.2 SV005 Lâm Nhân Nghĩa 1985 Tiền Giang 6.5 SV006 Hà Công Sự 1982 Cần Thơ 6.0

Trang 5

Bảng dữ liệu mẫu (tt)

DT001 Quản lý Nhân sự Nguyễn Thị Xuân 10 DT002 Web site Bán hàng qua mạng Hồ Văn Quang 15 DT003 Bảo mật trong thương mại điện tử Trần Hiếu Hạnh 20 DT004 Quản lý lịch công tác trên mạng Lê Đức Phúc 8 DT005 Bộ soạn thảo công thức toán học Trần Hiếu Hạnh 9 DT006 Web site đào tạo từ xa Lê Đức Phúc 25

SV001 DT001 Đồng Tháp 9.5 SV002 DT002 Vĩnh Long 9.0 SV003 DT001 Trà Vinh 9.0 SV004 DT002 Đồng Tháp 10.0 SV007 DT004 Trà Vinh 9.0 SV008 DT003 Bạc Liêu 10.0 SV001 DT004 Đồng Tháp 9.5 SV008 DT002 Trà Vinh 9.0

SV001 DT005 Tiền Giang 8.0 SV006 DT003 Đồng Tháp 9.5

5

Trang 6

Thao tác CSDL (tt)

2 Tạo bảng

Table_name

( Column_name Datatype [CONSTRAINT constraint_def DEFAULT default_exp]

[, column_name type [CONSTRAINT constraint_def

DEFAULT default_exp] ]

[,table_constraint [,…]]

)

Trang 7

Tạo bảng (tt)

Trong đó:

– Global Temporary: nếu có từ khóa này

bảng được tạo sẽ là bảng tạm

– Table_name: tên bảng do người dùng

đặt

– Column_name: tên cột trong bảng – Datatype: kiểu dữ liệu của cột

– Constraint: từ khóa cho phép tạo ràng

buộc trên cột

– Contraint_def: ràng buộc của cột – Default: từ khóa cho phép xác định giá

trị mặc định cho cột

– Default_exp: dữ liệu của cột nhận giá trị

default_exp nếu người dùng không nhập dữ liệu vào cột

– Table_constraint: ràng buộc của toàn

bảng dữ liệu

CREATE

[GLOBAL TEMPORARY]

TABLE

( column_name datatype

[CONSTRAINT

constraint_def

DEFAULT default_exp]

[, column_name type

[CONSTRAINT

constraint_def

DEFAULT default_exp] ]

[,table_constraint [,…]]

)

7

Trang 8

Tạo bảng (tt)

CREATE TABLE SINHVIEN (

MASV CHAR(10) PRIMARY KEY ,

HOTENSV VARCHAR2(40),

NAMSINH INT,

QUEQUAN VARCHAR2(40),

HOCLUC FLOAT

)

CREATE TABLE DETAI(

MADT CHAR(10) PRIMARY KEY ,

TENDT VARCHAR2(40),

CHUNHIEM VARCHAR2(40),

KINHPHI NUMBER

)

Trang 9

Tạo bảng (tt)

CREATE TABLE SVDT (

MASV CHAR(10) NOT NULL,

MADT CHAR(10) NOT NULL,

NOIA_D CHAR(40),

KETQUA FLOAT,

PRIMARY KEY (MASV, MADT),

CONSTRAINT SVDT_SV FOREIGN KEY

(MASV) REFERENCES SINHVIEN (MASV),

CONSTRAINT SVDT_DT FOREIGN KEY

(MADT) REFERENCES DETAI(MADT) )

9

Trang 10

Thao tác CSDL (tt)

NULL/NOT NULL Cho phép/không cho phép cột chứa giá

trị rỗng

CHECK (Criteria) Giá trị nhập vào cột phải thỏa Criteria

UNIQUE Giá trị nhập vào cột phải là duy nhất

PRIMARY KEY Ràng buộc khóa chính cho cột

REFERENCES

<Table_name1>

(Column_name1)

Ràng buộc khóa ngoại cho cột sẽ tham

chiếu tới Column_name đã tồn tại trong bảng Table_name

Mô tả:

CONSTRAINT <constraint_name>[<constraint_type>]

Trang 11

Thao tác CSDL (tt)

3 Sửa bảng

Thêm cột: ALTER TABLE <Tên_bảng> ADD

<Tên_cột> <Kiểu_dữ_liệu> [<RBTV>]

Xóa cột: ALTER TABLE <Tên_bảng>

DROP COLUMN <Tên_cột>

Thay đổi kiểu dữ liệu cột:

ALTER TABLE <Tên_bảng> MODIFY

<Tên_cột> <Kiểu_dữ_liệu_mới>

11

Trang 12

Sửa bảng (tt)

Thêm RBTV: ALTER TABLE <Tên_bảng> ADD

CONSTRAINT <Tên_RBTV> <RBTV>,

CONSTRAINT <Tên_RBTV> <RBTV>,

Xóa RBTV:

ALTER TABLE <Tên_bảng> DROP <Tên_RBTV>

Ví dụ:

CREATE TABLE HANGHOA(

MAHG CHAR(10) , TENHANG CHAR(50) , DVT CHAR(5)

)

Trang 13

Sửa bảng (tt)

 Mở rộng kiểu dữ liệu cho thuộc tính bảng:

ALTER TABLE HANGHOA

MODIFY DONGIA LONG

 Xóa thuộc tính bảng:

ALTER TABLE HANGHOA

 Thêm thuộc tính bảng:

ALTER TABLE HANGHOA ADD

13

Trang 14

Sửa bảng (tt)

Thay đổi RBTV:

ALTER TABLE SINHVIEN ADD

CONSTRAINT fk_sv FOREIGN KEY ( MAKHOA )

REFERENCES KHOA(MAKHOA)

ALTER TABLE HANGHOA ADD CONSTRAINT fk_HH

PRIMIRY KEY ( MAHG )

Xóa ràng buộc toàn vẹn trong bảng

ALTER TABLE SINHVIEN DROP CONSTRAINT fk_sv

Trang 15

Thao tác dữ liệu bảng (tt)

4 Xoá bảng

DROP TABLE <TÊN_TABLE>

[CASCADE CONSTRAINT]

CASCADE CONSTRAINT sẽ xóa luôn tất cả các ràng buộc toàn vẹn liên quan đến bảng cần xóa

DROP TABLE HANGHOA

CASCADE CONSTRAINT

15

Trang 16

Thao tác dữ liệu bảng (tt)

5 Thêm dữ liệu

INSERT INTO Tênbảng [Cột1, Cột2, …]

VALUES (giátrị1, giátrị2, …)

VD:

INSERT INTO SVDT (Masv, MaDT, KQ)

VALUES (‘SV001’, ‘DT08’, 8)

 Thêm nhiều dòng dữ liệu

INSERT INTO <Tên_bảng> [(ds_thuộc_tính)]

SELECT <th_tính_1>, …, <th_tính_n>

FROM <ds_bảng>

[WHERE <đ_kiện>]

Trang 17

Thao tác dữ liệu bảng (tt)

Nhận xét:

- Thứ tự các giá trị phải trùng với thứ tự các cột,

- Có thể thêm giá trị NULL ở những thuộc tính không là khóa chính hoặc NOT NULL,

- Các giá trị thuộc tính khóa không được trùng,

- Câu lệnh INSERT sẽ gặp lỗi nếu vi phạm RBTV (Khóa chính, tham chiếu, trùng tên,…), các thuộc tính có ràng buộc NOT NULL bắt buộc phải có giá trị

17

Trang 18

II Truy vấn Select

1 Định danh

Tạo định danh ( SYNONYM ):Tạo một định danh (tên

gọi tắt) tham chiếu đến một đối tượng của một schema

CREATE SYNONYM < tênđịnhdanh > FOR

<tên schema>.< tên object >

Xóa định danh:

 DROP SYNONYM < tên định danh >

VD: PHONG(MA_PHONG, TEN_PHONG)

CREATE SYNONYM P FOR PHONG;

INSERT INTO P(MA_PHONG, TEN_PHONG)

VALUES (1, 'Dao tao');

SELECT * FROM P; # SELECT * FROM PHONG;

Trang 19

Bài tập

Xác định khóa chính?

CH_MON)

DCHI_LL_KTS)

KINH_PHI, TEN_CHU, TEN_HAU, NGAY_BD)

19

Trang 20

Bài tập (tt)

Xác định khóa ngoại?

DCHI_LL_KTS)

KINH_PHI, TEN_CHU, TEN_THAU, NGAY_BD)

Ngày đăng: 27/02/2023, 07:52

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm