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

Bài giảng môn học Hệ cơ sở dữ liệu: Chương 4 - Nguyễn Như Hoa

81 28 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 81
Dung lượng 2,25 MB

Nội dung

Bài giảng Hệ cơ sở dữ liệu - Chương 3: Ngôn ngữ SQL cung cấp cho người học các kiến thức: Giới thiệu về ngôn ngữ SQL, định nghĩa dữ liệu, truy vấn dữ liệu, cập nhật dữ liệu. Mời các bạn cùng tham khảo nội dung chi tiết.

Chương Ngơn ngữ SQL Giáo trình & Tài liệu tham khảo: Ramez Elmasri, Shamkant B Navathe, 2011 Fundamentals of Database systems, 6th edition, Addison-Wesley Giáo trình Cơ sở liệu , Trần Đắc Phiến, ĐH Công nghiệp TPHCM Bộ slide giảng Nguyễn Minh Thư, Khoa CNTT, ĐH KHTN TPHCM Bộ slide giảng Trần Thị Kim Chi, Khoa CNTT, ĐH Công nghiệp TPHCM Gv Nguyễn Như Hoa Nội dung • • • • Giới thiệu Định nghĩa liệu Truy vấn liệu Cập nhật liệu Giới thiệu • SQL (Structured Query Language) – – – – – – Ngôn ngữ cấp cao Ngôn ngữ phi thủ tục Được sử dụng để thao tác với SQL Database Được phát triển IBM (1970s) Được gọi SEQUEL (Structured English Query Language) Được ANSI công nhận phát triển thành chuẩn với phiên • • • • SQL-86 SQL-92 SQL-99 SQL-2016 Giới thiệu • SQL có nhiều nhóm lệnh – – – – – – – Định nghĩa liệu (DDL) Thao tác liệu (DML) Định nghĩa khung nhìn Định nghĩa Ràng buộc tồn vẹn Phân quyền bảo mật Điều khiển giao tác … • SQL sử dụng thuật ngữ – Bảng ~ quan hệ – Cột ~ thuộc tính – Dịng ~ Giới thiệu • Transact-SQL (T-SQL) – Là phiên SQL Microsoft phát triển dựa ANSI SQL – Sử dụng MS SQL Server _ DBMS Microsoft Giới thiệu • MS SQL Server – – – – Là Relational DBMS Microsoft phát triển Là database server (software) Hỗ trợ giao diện GUI command line Hỗ trợ nhiều chức • • • • • To create databases To maintain databases To analyze the data through SQL Server Analysis Services (SSAS) To generate reports through SQL Server Reporting Services (SSRS) To build high-performance data integration solutions, including extraction, transformation, and load (ETL) packages for data warehousing through SQL Server Integration Services (SSIS) Tham khảo : https://docs.microsoft.com/en-us/sql/sql-server/?view=sql-server-ver15 Giới thiệu • MS SQL Server Management Studio (SSMS) – Là công cụ cho phép user quản lý database instance – Là công cụ quản lý tập trung tất thành phần SQL server , Azure SQL Database, SQL Data Warehouse (Access, configure, manage, administer, and develop ) Tham khảo : https://docs.microsoft.com/en-us/sql/ssms/sql-servermanagement-studio-ssms?view=sql-server-ver15 Định nghĩa liệu (DDL) • Nhóm lệnh Định nghĩa liệu (Data Definition Language commands) gồm – Tạo Cơ sở liệu – Tạo table – Kiểu liệu • Định nghĩa kiểu liệu – Khai báo ràng buộc liệu Tạo Database • Ví dụ Data file có tên SampleDate Log file có tên SampleLog Tên database CREATE DATABASE Sample ON PRIMARY ( NAME=SampleData, FILENAME='c:\Program Files\ \ \Data\Sample.mdf', SIZE=10MB, MAXSIZE=15MB, FILEGROWTH=20%) LOG ON ( NAME=SampleLog, FILENAME= 'c:\Program Files\ \ \Data\Sample.ldf', SIZE=3MB, MAXSIZE=5MB, FILEGROWTH=1MB) Tạo Database • Tạo Database = thực khai báo file lưu trữ • Một Database bao gồm hai hay nhiều tập tin – Một (hay nhiều) file data (hay nhiều) file log • File data lưu liệu, file log lưu nhật ký giao tác – Qui ước phần tên file • File liệu (Primary data file) mdf => có file • Các file thứ cấp (Secondary data files, tùy chọn) ndf • File nhật ký giao dịch (Transaction log file) ldf – Các file nằm đĩa vật lý khác để cải thiện việc thực thi hệ thống 10 • Hiển thị danh sách sinh viên tiền học bổng nhận thêm : sv ngành CS SE nhận thêm 20% học bổng , ngành lại nhận 10% học bổng MaSV 201001 201002 201003 201004 201005 201006 201007 201008 201009 201010 HoSV Huỳnh Nhất Nguyễn Anh Trần Phương Nguyễn Văn Trần Văn Lưu Chí Lâm Phước Huỳnh Huy Lê Hồng Phan Nhật Duy TenSV Luận Tuấn Bằng Cơng Diệm Dũng Hịa Hồng Khải Khanh Lop C10CK1 C10CK1 C10DC1 C10DC1 C10DC1 CS01TT CS01TT CS01TT CS01TT CS01TT HocBong 20000 50000 30000 10000 20000 10000 10000 20000 50000 20000 MaNganh CS CS SE SE CS CS SE IS IS IT Select MaSV , HoSV, TenSV, ( case MaNganh WHEN ‘CS’ THEN 0.2 WHEN ‘SE’ THEN 0.2 WHEN ‘IS’ THEN 0.1 WHEN ‘IT’ THEN 0.1 END ) * Hocbong as BosungHB From SINHVIEN 67 Lệnh Select … into … • Tạo table cách “copy” từ table có Vd : Tạo table backup cho table SINHVIEN SELECT * INTO SV_Backup FROM SINHVIEN 68 Các lệnh cập nhật liệu • Thêm liệu : Insert • Cập nhật liệu : Update • Xóa liệu : Delete 69 Lệnh Insert • Thêm hay nhiều dòng liệu vào table (còn gọi nhập liệu) • Cú pháp (1) Nhập hay nhiều record liệu INSERT INTO () VALUES () (2) Nhập liệu dựa vào liệu table khác INSERT INTO () SELECT … 70 Lệnh Insert • Nhận xét : – Thứ tự giá trị phải trùng với thứ tự cột – Có thể đưa NULL vào cột cho phép giá trị null – Dữ liệu nhập vào table phải kiểu liệu thỏa ràng buộc định nghĩa cho table Ngược lại lệnh Insert bị lỗi 71 CREATE TABLE NHANVIEN ( MANV CHAR(9) not null primary key , HOTEN VARCHAR(30), PHAI CHAR(3) check (PHAI like ‘nam’ or PHAI like ‘nu’), LUONG INT, PHG INT references PHONGBAN(MAPB) ) Lệnh nhập liệu vào table NHANVIEN (1) INSERT INTO NHANVIEN VALUES ( ‘111222333’, ‘Nguyen Thanh Tung’, ‘nam’, 1200, ) , ( ‘111222444’, ‘Nguyen Manh Hung’, ‘nam’, 3200, ), ( ‘111222555’, ‘Le Tri Thinh’, ‘nam’, NULL, NULL ) (2) INSERT INTO NHANVIEN( MANV, HOTEN, PHAI ) VALUES ( ‘111222000’, ‘Vo Thanh Van’, ‘nu’ ) , ( ‘111222001’, ‘Tran Thanh Ha’, ‘nam’) Xem kết 72 CREATE TABLE NV_CONGVIEC ( MANV CHAR(9) not null primary key , HOTEN VARCHAR(30), PHAI CHAR(3) check (PHAI IN (‘nam’ , ‘nu’)), NgayBatDau DATE , Chucdanh VARCHAR (10) ) Lệnh nhập liệu vào table NV_CONGVIEC, cách ‘sao chép’ liệu từ table NHANVIEN INSERT INTO NV_CONGVIEC (MANV, HOTEN, PHAI) SELECT MaNV , Hoten, Phai FROM NHANVIEN Kết thực thi hai lệnh Insert vào NHANVIEN (trang trước) MANV 111222333 111222444 111222555 111222000 111222001 HOTEN Nguyen Thanh Tung Nguyen Manh Hung Le Tri Thinh Vo Thanh Van Tran Thanh Ha PHAI nam nam nam nu Nam LUONG PHG 1200 3200 73 Lệnh Update • Thay đổi giá trị thuộc tính cho dịng bảng (hay gọi chỉnh sửa liệu) • Cú pháp UPDATE SET =, =, … [WHERE ] 74 Lệnh Update • Nhận xét – Những dòng thỏa điều kiện mệnh đề WHERE thay đổi giá trị – Nếu không dùng mệnh đề WHERE : thay đổi giá trị áp dụng cho tất dòng bảng – Lệnh UPDATE gây vi phạm RB tham chiếu • Khơng cho sửa – No Action • Sửa ln dịng có giá trị tham chiếu đến – CASCADE 75 Lệnh Update (1) (2) (3) UPDATE SINHVIEN SET Hocbong=Hocbong*1.1 UPDATE SINHVIEN SET Lop = ‘CS01TT’ WHERE MaSV=‘201001’ UPDATE SINHVIEN SET Hocbong=Hocbong*1.1 WHERE MaNganh IN ( Select MaNganh From NGANH Where SoTC >= 200 ) 76 Lệnh Delete • Xóa dịng bảng • Cú pháp DELETE FROM [WHERE ] 77 Lệnh Delete • Nhận xét – Những dịng thỏa điều kiện mệnh đề WHERE bị xóa – Nếu khơng định điều kiện mệnh đề WHERE, tất dịng bảng bị xóa – Lệnh DELETE gây vi phạm RB tham chiếu • Khơng cho xóa (NO ACTION) • Xóa ln dịng có giá trị tham chiếu đến) (CASCADE) • Đặt NULL cho giá trị tham chiếu (SET NULL) 78 Lệnh Delete (1) DELETE FROM SINHVIEN WHERE Lop like ‘%CK1’ (2) DELETE FROM SINHVIEN WHERE MaNganh IN ( Select MaNganh From NGANH Where SoTC

Ngày đăng: 04/11/2020, 07:02

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w