Bài giảng Cơ sở dữ liệu: Chương 3 - Nguyễn Việt Cường (p2)
Thông tin tài liệu:
Nội dung trích xuất từ tài liệu:
Bài giảng Cơ sở dữ liệu: Chương 3 - Nguyễn Việt Cường (p2) Chương 3 SQL Structured Query Language Phần 2 Nội dung DDL (Data Definition Language) Định nghĩa Database Định nghĩa cấu trúc Bảng Định nghĩa ràng buộc toàn vẹn Định nghĩa khung nhìn Tham khảo các lệnh trên trong môi trường SQL Server Tạo Database Trong SQL Server CREATE DATABASE Sales ON PRIMARY ( NAME = ‘Sale_data’, FILENAME = ‘d:\database\Sales\Saledata.mdf', SIZE = 10, MAXSIZE = 50, FILEGROWTH = 2 ) LOG ON ( NAME = 'Sales_log', FILENAME = ‘d:\database\Sales\Salelog.ldf', SIZE = 2, MAXSIZE = 5, FILEGROWTH = 1) Kiểu dữ liệu Ký tự Char, Varchar, nchar, nvarchar, text, ntext Bit Bit Số chính xác Tinyint, smallint, Int, bigint, Số thực có Decimal(i,j) , numeric(i,j) định dạng Số thực Float, Real Ngày giờ Smalldatetime, Datetime Loại khác Money, Binary, Image, … Tạo cấu trúc bảng Sử dụng lệnh Create, Alter, Drop để tạo , sửa, xóa cấu trúc bảng Lệnh tạo bảng Create: Định nghĩa các cột : tên cột, kiểu dữ liệu Khai báo các ràng buộc Cú pháp : CREATE TABLE tênbảng ( Têncột_1 Kiểudữliệu [not null] [unique] [RBTV trên cột], …. Têncột_n Kiểudữliệu [not null] [unique] [RBTV trên cột], [RBTV bảng] ) Tạo cấu trúc bảng CREATE TABLE KHACHHANG ( MAKH nvarchar(10) NOT NULL Primary Key, TENKH nvarchar(30) NULL, DIACHI nvarchar(40) NULL, THANHPHO nvarchar(50) NOT NULL, DIENTHOAI nvarchar(50) NULL ) Tạo cấu trúc bảng CREATE TABLE NHANVIEN ( MANV int NOT NULL, HONV nvarchar(20) NULL, TENNV nvarchar(10) NOT NULL, PHAI bit NOT NULL, NGAYSINH datetime NULL, NOISINH nvarchar(15) NULL, DIACHI nvarchar(40) NOT NULL, DIENTHOAI nvarchar(13) NULL, CONSTRAINT PK_NHANVIEN PRIMARY KEY (MANV) ) Tạo cấu trúc bảng CREATE TABLE SANPHAM ( MASP tinyint NOT NULL, TENSP nvarchar(20) NULL, DVT nvarchar(10) NULL, DONGIA real NULL, Tonkho bit ) Go ALTER TABLE SANPHAM ADD CONSTRAINT PK_SANPHAM PRIMARY KEY(MASP) Go Tạo cấu trúc bảng CREATE TABLE HOADON ( MAHD nvarchar(5) NOT NULL PRIMARY KEY , LOAIHD nvarchar(1) NULL, MAKH nvarchar(10) NULL, MANV int NULL REFERENCES NHANVIEN (MANV), NGAYLAPHD datetime NULL, NGAYGIAONHAN datetime NULL, CONSTRAINT [FK_HD_KH] FOREIGN KEY(MAKH) REFERENCES KHACHHANG (MAKH) ) Tạo cấu trúc bảng CREATE TABLE CHITIETHOADON ( MAHD nvarchar(5) NOT NULL , MASP tinyint NOT NULL, SOLUONG smallint NULL DEFAULT 0 , DONGIA float NULL, CONSTRAINT PK_CTHD PRIMARY KEY (MAHD,MASP) ) Go ALTER TABLE CHITIETHOADON ADD CONSTRAINT [FK_CTHD_HD] FOREIGN KEY(MAHD) REFERENCES HOADON (MAHD) Go ALTER TABLE CHITIETHOADON ADD CONSTRAINT [FK_CTHD_SP] FOREIGN KEY(MASP) REFERENCES SANPHAM(MASP) Chỉnh sửa cấu trúc bảng Sử dụng lệnh Alter để chỉnh sửa cấu trúc bảng : thêm/xóa cột, đổi kiểu dữ liệu, thêm/xóa ràng buộc ALTER TABLE SANPHAM ADD NHOMHANG VARCHAR(3) Go ALTER TABLE SANPHAM ALTER COLUMN NHOMHANG VARCHAR(5) Go ALTER TABLE SANPHAM DROP COLUMN NHOMHANG Go ALTER TABLE CHITIETHOADON DROP CONSTRAINT [FK_CTHD_HD] Xóa bảng DROP TABLE SANPHAM Tạo các Ràng buộc khác Ràng buộc miền giá trị ALTER TABLE SANPHAM ADD CONSTRAINT [CK_DG] CHECK (DONGIA>0) Go ALTER TABLE HOADON ADD CONSTRAINT CK_Ngay CHECK (NgaylapHDKhung nhìn – View Khái niệm Là bảng “ảo” : Không lưu trữ dữ liệu Khi xem dữ liệu trong View, thực chất là xem tập kết quả của một câu lệnh Select Giống như bảng: có thể truy vấn, thêm, xóa, sửa dữ liệu thông qua view Mục đích: Che dấu tính phức tạp của dữ liệu Cung cấp cơ chế đảm bảo an toàn dữ liệu Tăng hiệu quả thực thi Khung nhìn – View Tạo View Cú pháp : CREATE VIEW tênview [dscột] AS SELECT … FROM … WHERE Vd1: Tạo view chứa các nhân viên có chức vụ ‘kinhdoanh’ CREATE VIEW nvKDoanh AS Select * From Nhanvien Where chucvu like ‘kinh doanh’ Khung nhìn – View Công dụng Sử dụng view Select * From nvKDoanh Go Insert into nvKDoanh Values(…) Go Update nvKDoanh Set luong = luong*1.1 Go Delete From nvKDoanh Khung nhìn – View Hạn chế Vd2: CREATE VIEW vwHD AS Select Manv, Count(*) From Hoadon Group by Manv Go Select count(*) From vwHD Go Update vwHD Set manv = '100‘ Không cập nhật trên View mà Where manv =1 sử dụng hàm Aggregate hay Distinct khi tạo Go Delete From vwHD Không xóa trên View mà sử dụng hàm Aggregate hay Distinct , hoặc xây dựng từ nhiều bảng
Tìm kiếm theo từ khóa liên quan:
Bài giảng Cơ sở dữ liệu Cơ sở dữ liệu Structured Query Language Data Definition Language Môi trường SQL Server Định nghĩa khung nhìnGợi ý tài liệu liên quan:
-
62 trang 402 3 0
-
Đề thi kết thúc học phần học kì 2 môn Cơ sở dữ liệu năm 2019-2020 có đáp án - Trường ĐH Đồng Tháp
5 trang 378 6 0 -
13 trang 296 0 0
-
Giáo trình Cơ sở dữ liệu: Phần 2 - TS. Nguyễn Hoàng Sơn
158 trang 294 0 0 -
Phân tích thiết kế hệ thống - Biểu đồ trạng thái
20 trang 290 0 0 -
Tài liệu học tập Tin học văn phòng: Phần 2 - Vũ Thu Uyên
85 trang 258 1 0 -
Đề cương chi tiết học phần Quản trị cơ sở dữ liệu (Database Management Systems - DBMS)
14 trang 248 0 0 -
Giáo trình về dữ liệu và các mô hình cơ sở dữ liệu
62 trang 187 0 0 -
8 trang 186 0 0
-
Giáo trình Cơ sở dữ liệu: Phần 2 - Đại học Kinh tế TP. HCM
115 trang 176 0 0 -
Giáo trình Cơ sở dữ liệu: Phần 1 - Sở Bưu chính Viễn Thông TP Hà Nội
48 trang 171 1 0 -
Bài giảng môn học Cơ sở dữ liệu - Chương 1: Tổng quan về cơ sở dữ liệu
27 trang 171 0 0 -
Bài giảng Cấu trúc dữ liệu và thuật toán: Chương 7 - Nguyễn Khánh Phương
214 trang 160 0 0 -
Hướng dẫn tạo file ghost và bung ghost
12 trang 155 0 0 -
Báo cáo Thực tập chuyên môn Thiết kế cơ sở dữ liệu: Xây dựng Website studio
26 trang 155 0 0 -
Giáo trình Nhập môn Cơ sở dữ liệu - GV. Nguyễn Thế Dũng
280 trang 154 0 0 -
Bài tập thiết kế cơ sở dữ liệu
9 trang 146 0 0 -
Bài giảng Cơ sở dữ liệu (Database) - Chương 2: Mô hình thực thể - liên kết
120 trang 140 0 0 -
Vai trò của phân tích, thiết kế hệ thống thông tin trong quy trình xây dựng phần mềm
7 trang 135 0 0 -
204 trang 129 1 0