Danh mục tài liệu

Bài giảng Cơ sở dữ liệu: Bài 4 - GV. Dương Khai Phong

Số trang: 35      Loại file: pdf      Dung lượng: 2.64 MB      Lượt xem: 20      Lượt tải: 0    
Xem trước 4 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Mục tiêu trình bày của bài 4 Ngôn ngữ SQL thuộc bài giảng lcơ sở dữ liệu nhằm trình bày về các ngôn ngữ giao tiếp, ngôn ngữ định nghĩa dữ liệu, ngôn ngữ thao tác dữ liệu, ngôn ngữ truy vấn dữ liệu có cấu trúc, ngôn ngữ điều khiển dữ liệu.
Nội dung trích xuất từ tài liệu:
Bài giảng Cơ sở dữ liệu: Bài 4 - GV. Dương Khai Phong BUỔI 3 Bài 4:Ngôn ngữ SQL Khoa HTTT - Dương Khai Phong 1 Nội dung1. Giới thiệu2. Các ngôn ngữ giao tiếp3. Ngôn ngữ định nghĩa dữ liệu4. Ngôn ngữ thao tác dữ liệu5. Ngôn ngữ truy vấn dữ liệu có cấu trúc6. Ngôn ngữ điều khiển dữ liệu Khoa HTTT - Dương Khai Phong 2 1. Giới thiệuLà ngôn ngữ chuẩn để truy vấn và thao tác trênCSDL quan hệLà ngôn ngữ phi thủ tụcKhởi nguồn của SQL là SEQUEL - StructuredEnglish Query Language, năm 1974)Các chuẩn SQL  SQL89  SQL92 (SQL2)  SQL99 (SQL3) Khoa HTTT - Dương Khai Phong 3 2. Các ngôn ngữ giao tiếpNgôn ngữ định nghĩa dữ liệu (Data DefinitionLanguage - DDL): cho phép khai báo cấu trúcbảng, các mối quan hệ và các ràng buộc.Ngôn ngữ thao tác dữ liệu (Data ManipulationLanguage - DML): cho phép thêm, xóa, sửa dữliệu.Ngôn ngữ truy vấn dữ liệu (Structured QueryLanguage – SQL): cho phép truy vấn dữ liệu.Ngôn ngữ điều khiển dữ liệu (Data ControlLanguage – DCL): khai báo bảo mật thông tin,cấp quyền và thu hồi quyền khai thác trên cơ sởdữ liệu. Khoa HTTT - Dương Khai Phong 43. Ngôn ngữ định nghĩa dữ liệu3.1 Lệnh tạo bảng (CREATE) 3.1.1 Cú pháp 3.1.2 Một số kiểu dữ liệu3.2 Lệnh sửa cấu trúc bảng (ALTER) 3.2.1 Thêm thuộc tính 3.2.2 Sửa kiểu dữ liệu của thuộc tính 3.2.3 Xoá thuộc tính 3.2.4 Thêm ràng buộc toàn vẹn 3.2.5 Xoá ràng buộc toàn vẹn3.3 Lệnh xóa bảng (DROP) Khoa HTTT - Dương Khai Phong 5 3. Ngôn ngữ định nghĩa dữ liệu 3.1 Lệnh tạo bảng (CREATE)3.1.1 Cú pháp CREATE TABLE ( [not null], [not null], … [not null], khai báo khóa chính, khóa ngoại, ràng buộc ) Khoa HTTT - Dương Khai Phong 6 3. Ngôn ngữ định nghĩa dữ liệu 3.1 Lệnh tạo bảng (CREATE)3.1.1 Cú pháp CREATE TABLE ( [not null], [not null], … [not null], khai báo khóa chính, khóa ngoại, ràng buộc ) Khoa HTTT - Dương Khai Phong 7 3. Ngôn ngữ định nghĩa dữ liệu 3.1 Lệnh tạo bảng (CREATE)3.1.2 Một số kiểu dữ liệu:Kiểu dữ liệu SQL ServerChuỗi ký tự varchar(n), char(n), Unicode: nvarchar(n), nchar(n)Số Số nguyên: tinyint,smallint, int, Số thực: numeric(m,n), decimal(m,n),float, real, Tiền tê: smallmoney, moneyNgày tháng smalldatetime =>dom(01/01,1900;06/06/2079) datetime => dom(01/01/1753;31/12/9999)Luận lý bit => dom(0,1) Khoa HTTT - Dương Khai Phong 8 3. Ngôn ngữ định nghĩa dữ liệu 3.1 Lệnh tạo bảng (CREATE)Ví dụ:Cho lược đồ CSDL quản lý bán hàng gồm có các quanhệ sau:KHACHHANG (MAKH, HOTEN, DCHI, SODT, NGSINH, DOANHSO, NGDK, CMND)NHANVIEN (MANV,HOTEN, NGVL, SODT)SANPHAM (MASP,TENSP, DVT, NUOCSX, GIA)HOADON (SOHD, NGHD, MAKH, MANV, TRIGIA)CTHD (SOHD,MASP,SL)Hãy tạo các quan hệ từ lược đồ CSDL trên? Khoa HTTT - Dương Khai Phong 93. Ngôn ngữ định nghĩa dữ liệu 3.1 Lệnh tạo bảng (CREATE)Tạo quan hệ KHACHHANG: Create table KHACHHANG ( MAKH char(4) , primary key, HOTEN varchar(40), DCHI varchar(50), SODT varchar(20), NGSINH smalldatetime, DOANHSO money, NGDK smalldatetime, CMND varchar(10) ) Khoa HTTT - Dương Khai Phong 10 3. Ngôn ngữ định nghĩa dữ liệu 3.1 Lệnh tạo bảng (CREATE)Tạo quan hệ CTHD:Create table CTHD primary key( SOHD int, foreign key references SANPHAM(MASP), MASP char(4), foreign key references HOADON(SOHD), SL int, constraint PK_CTHD primary key (SOHD,MASP)) Khoa HTTT - Dương Khai Phong 113. Ngôn ngữ định nghĩa dữ liệu 3.2 Lệnh sửa cấu trúc bảng (ALTER)3.2.1 Thêm thuộc tính ALTER TABLE tênbảng ADD têncột kiểudữliệu  Ví dụ: thêm cột Ghi_chu vào bảng khách hàng ALTER TABLE KHACHHANG ADD GHI_CHU varchar(20)3.2.2 Sửa kiểu dữ liệu thuộc tính ALTER TABLE tênbảng ALTER COLUMN têncột kiểudữliệu_mới Lưu ý: Không phải sửa bất kỳ kiểu dữ liệu nào cũng được Khoa HTTT - Dương Khai Phong 123. Ngôn ngữ định nghĩa dữ liệu 3.2 Lệnh sửa cấu trúc bảng (ALTER)  Ví dụ: Sửa Cột Ghi_chu thành kiểu dữ liệu varchar(50) ALTER TABLE KHACHHANG ALTER COLUMN GHI_CHU varchar(50) => Nếu sửa kiểu dữ liệu của cột Ghi_chu thành varchar(5), mà trước đó đã nhập giá trị cho cột Ghi_chu có độ dài hơn 5 ký tự thì không được phép. => Hoặc sửa từ kiểu chuỗi ký tự sang kiểu số, …3.2.3 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_chu trong bảng KHACHHANG ALTER TABLE NHANVIEN DRO ...