intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Cơ sở dữ liệu: Chương 3 - Nguyễn Việt Cường (p2)

Chia sẻ: Bautroibinhyen15 Bautroibinhyen15 | Ngày: | Loại File: PPT | Số trang:16

62
lượt xem
2
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng "Cơ sở dữ liệu - Chương 3: SQL - Phần 2" cung cấp cho người học các kiến thức về Data Definition Language, tham khảo các lệnh trên trong môi trường SQL Server. Mời các bạn cùng tham khảo nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Cơ sở dữ liệu: Chương 3 - Nguyễn Việt Cường (p2)

  1. Chương 3 SQL Structured Query Language Phần 2
  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
  3. 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)
  4. 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, …
  5. 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] )
  6. 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 )
  7. 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) )
  8. 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
  9. 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) )
  10. 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)
  11. 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
  12. 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 (NgaylapHD
  13. Khung 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
  14. 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’
  15. 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
  16. 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
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
10=>1