1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Thiết kế cơ sở dữ liệu: Chương 2 - ThS. Trần Quang Hải Bằng

38 13 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

Định dạng
Số trang 38
Dung lượng 371,76 KB

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

Nội dung

Bài giảng Thiết kế cơ sở dữ liệu - Chương 2: Lập trình và quản trị người dùng trong SQL Server trình bày các nội dung: Giới thiệu SQL, các lệnh làm việc với CSDL, Stored Procedure, Trigger, quản trị người dùng. Mời các bạn cùng tham khảo nội dung chi tiết.

Trang 1

THIẾT KẾ CƠ SỞ DỮ LIỆU

( MHT09.3)

Chương 2 Lập trình và Quản trị người dùng

trong SQL Server

Trang 2

Nội dung

 Giới thiệu SQL, các lệnh làm việc với CSDL

 Nội thủ tục (Stored Procedure)

 Trigger

 Quản trị người dùng

Chương 2 - Lập trình và Quản trị người dùng trong SQL 2

Trang 3

 1970: SQL (Structured Query Language) bắt nguồn từngôn ngữ SEQUEL (Structured English QUEryLanguage), ngôn ngữ được thiết kế tại tập đoàn IBMnhằm đưa ra một giao diện truy vấn dữ liệu với HQTCSDLthử nghiệm SYSTEM R

Chương 2 - Lập trình và Quản trị người dùng trong SQL 3

Trang 4

 SQL:2011 – Support temporary databases

Chương 2 - Lập trình và Quản trị người dùng trong SQL 4

Trang 5

 Một lược đồ (SQL Schema) được xác định bởi tên của nó,

và bao gồm một tên xác thực cho biết người dùng nào sởhữu lược đồ cũng như như mô tả của các thành phầntrong lược đồ đó

 Các thành phần của lược đồ bao gồm: bảng(tables), ràngbuộc(constrains), khung nhìn(views), vùng (domain) vàcác cấu trúc mô tả lược đồ

 1 Schema <=> 1 Database

Chương 2 - Lập trình và Quản trị người dùng trong SQL 5

Trang 6

DROP SCHEMA Tên_lược_đồ [CASCADE|RESTRICT];

– Cascade: Xóa lược đồ + các phần tử của nó– Restrict: Chỉ xóa nếu có đối tượng nào trong đó

Chương 2 - Lập trình và Quản trị người dùng trong SQL 6

Trang 7

DROP DATABASE Quanlyphongmay;

Chương 2 - Lập trình và Quản trị người dùng trong SQL 7

Trang 8

Khung nhìn - View

Là một bảng tạm thời gồm 1 số thuộc tính từ nhiều bảng khác nhau

Ý nghĩa:

– Truy cập đến dữ liệu dễ dàng – An toàn dữ liệu

Chương 2 - Lập trình và Quản trị người dùng trong SQL 8

Trang 9

Khung nhìn – View (tt)

Tạo VIEW

CREATE VIEW Tên_khung_nhìn

[ trường 1, trường 2, … ] AS select_statement

[ WITH CHECK OPTION ];

Xóa VIEW

DROP VIEW Tên_khung_nhìn;

Chương 2 - Lập trình và Quản trị người dùng trong SQL 9

Trang 10

Ví dụ

Tạo view:

CREATE VIEW SV_Tinh

AS SELECT Hoten, Tentinh

FROM SV, Tinh

WHERE SV.Matinh = Tinh.Matinh

WITH CHECK OPTION;

Xóa view:

DROP VIEW SV_Tinh;

Chương 2 - Lập trình và Quản trị người dùng trong SQL 10

Trang 11

Định nghĩa bảng

 Tạo bảng

CREATE TABLE Tên_bảng (

Tên_thuộc_tính kiểu_dl [ràng_buộc DEFAULT giá trị], Tên_thuộc_tính kiểu_dl [ràng_buộc DEFAULT giá trị],

[PRIMARY KEY (DS_thuộc_tính),UNIQUE (DS_thuộc_tính),

FOREIGN KEY (Thuộc_tính) REFERENCESTên_bảng(Thuộc_tính) ON DELETE SET NULL |

Chương 2 - Lập trình và Quản trị người dùng trong SQL 11

Trang 12

Định nghĩa bảng

 Kiểu dữ liệu: là một trong các kiểu của SQL hoặc miền dongười dùng định nghĩa

 Ràng buộc: NOT NULL

 DEFAULT giá trị: là giá trị mặc định được thiết lập chotrường

 PRIMARY KEY (DS các trường): khóa chính

 UNIQUE (DS_thuộc_tính): thuộc tính có giá trị là duy nhất

 FOREIGN KEY (Thuộc_tính) REFERENCESTên_bảng(Thuộc_tính)]: liên kết với bảng khác

Trang 13

Ví dụ

Trang 14

Định nghĩa bảng (tt)

 Xóa bảng:

– DROP TABLE Tên_bảng [CASCADE | RESTRICT];

 Sửa đổi cấu trúc bảng:

ALTER TABLE Tên_bảng (

[ALTER Tên_trường_cần_sửa Đặc trưng mới[ADD Tên_trường_cần_thêm_mới Đặc trưng]

[DROP Tên_trường cần xóa CASCADE|RESTRICT]);

Chương 2 - Lập trình và Quản trị người dùng trong SQL 14

Trang 15

Ví dụ:

Chương 2 - Lập trình và Quản trị người dùng trong SQL 15

 Xóa 1 trường khỏi bảng

 Sửa giá trị mặc định cho 1 trường trong bảng

 Thay đổi 1 ràng buộc trong bảng

Trang 16

số chữ số thuộc phần thập phân Trong trường hợp không được khai báo tường minh thì j bằng không

Trang 17

– Trong đó: n là kích thước tối đa

Kiểu xâu bit:

– độ dài cố định – BIT(n)– độ dài thay đổi – BIT VARYING(n)

– Trong đó: n là độ dài cực đại của xâu bít

Trang 18

Các kiểu dữ liệu (tt)

Kiểu ngày

– Có độ rộng là 10– Các thành phần: YEAR, MONTH, DAY– Kiểu định dạng điển hình là YYYY-MM-DD

Kiểu thời gian:

– Độ rộng ít nhất là 8– Các thành phần là HOUR, MINUTE, SECOND.– Kiểu định dạng điển hình là HH:MM:SS

Trang 19

Kiểu TIMESTAMP kết hợp cả hai kiểu DATE và TIME cộng thêm sau vị trí để chỉ độ chính xác sau giây.

Trang 20

Các kiểu dữ liệu

Kiểu dữ liệu khác liên quan đến DATE , TIME và TIMESTAMP là INTERVAL Kiểu giá trị này xác định khoảng thời gian giữa hai mốc thời gian tuyệt đối như DATE , TIME , TIMESTAMP

Trang 21

CREATE DOMAIN MyChar AS CHAR(9)

Sau câu lệnh này thì có thể dùng kiểu MyChar thay thế cho CHAR(9)

 Xóa miền:

DROP DOMAIN Tên_miền;

Chương 2 - Lập trình và Quản trị người dùng trong SQL 21

Trang 22

[ WHERE search_condition ] [ GROUP BY group_by_expression ] [ HAVING search_condition ]

[ ORDER BY order_expression [ ASC | DESC ] ]

Có thể sử dụng toán tử UNION để kết hợp các truy vấn lại thành 1 tập kết quả.

Trang 25

Stored procedure (tt)

 Các loại SP:

– System SP– Extended SP– Temporary SP– Custom SP

 SP người dùng gồm 3 loại:

– Trigger– User sp– Defined function

Trang 27

– EXEC tên_sp @p1 = giá_trị, @p2 = giá_trị, …

Trang 28

Ví dụ một SP đơn giản

Chương 2 - Lập trình và Quản trị người dùng trong SQL 28

Trang 29

Ví dụ SP có tham số

Chương 2 - Lập trình và Quản trị người dùng trong SQL 29

Trang 30

Ví dụ SP có tham số đầu ra

Trang 31

SP có tham số đầu ra là con trỏ

Chương 2 - Lập trình và Quản trị người dùng trong SQL 31

Trang 32

select @x = ‘Hello world’

return @x

End

declare @v char(100)

exec @v = sp7print @v

Trang 34

Trigger

 Các loại trigger

– DML trigger: Đối với các thao tác insert, update, delete

– DDL trigger: Đối với các thao tác create, alter, drop

– Logon trigger

 Trigger không có giá trị trả về

 Trigger không có tham số

Chương 2 - Lập trình và Quản trị người dùng trong SQL 34

Trang 35

Định nghĩa 1 trigger

CREATE TRIGGER trigger_name

[FOR | AFTER | INSTEAD OF ]

[INSERT [,] [UPDATE] [,] [DELETE]

Trang 36

Lưu ý

 Trong quá trình thực hiện trigger, SQL server tự động tạo ra 2 bảng Inserted và Deleted có cấu trúc giống bảng mà trigger định nghĩa trên đó

Ngày đăng: 08/05/2021, 12:10

TỪ KHÓA LIÊN QUAN

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