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

Bài giảng Hệ quản trị cơ sở dữ liệu (Database Management Systems) - Bài 3: Thiết kế truy vấn với T-SQL (Transact-SQL)

Chia sẻ: _ _ | Ngày: | Loại File: PDF | Số trang:9

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

Bài giảng Hệ quản trị cơ sở dữ liệu (Database Management Systems) - Bài 3: Thiết kế truy vấn với T-SQL (Transact-SQL). Nội dung chính trong bài giảng này gồm có: Thiết kế và thực thi truy vấn, lưu và mở truy vấn, các phát biểu T-SQL dạng định nghĩa dữ liệu, tạo CSDL mới, tạo bảng dữ liệu, chỉnh sửa cấu trúc CSDL,... Mời các bạn cùng tham khảo!

Chủ đề:
Lưu

Nội dung Text: Bài giảng Hệ quản trị cơ sở dữ liệu (Database Management Systems) - Bài 3: Thiết kế truy vấn với T-SQL (Transact-SQL)

  1. Thiết kế và thực thi truy vấn Bài 3: Thiết kế truy vấn với T-SQL (Transact-SQL) 1. Mở cửa sổ 2. Soạn thảo thiết kế truy vấn truy vấn 3. Lựa chọn 4. Thực thi truy CSDL vấn 2/8/2018 Microsoft SQL Server 2005 1 2/8/2018 Microsoft SQL Server 2005 2 Lưu và mở truy vấn  Lưu truy vấn được thiết kế: - Nhấn Ctrl+S, hoặc kích chuột vào nút Save - Chỉ ra thư mục lưu và đặt tên cho truy vấn rồi nhấn Save Các phát biểu T-SQL  Mở một truy vấn đã được thiết kế: dạng định nghĩa dữ liệu - Từ cửa sổ Database, nhấn nút Open trên thanh công cụ (Ctrl+O) - Chọn file chứa truy vấn cần mở rồi nhấn Open 2/8/2018 Microsoft SQL Server 2005 3 2/8/2018 Microsoft SQL Server 2005 4 1
  2. Tạo CSDL mới Giải ví dụ 1  Cú pháp: CREATE DATABASE QLBanHang CREATE DATABASE ON PRIMARY  Ví dụ 1: Trong ổ C, tạo thư mục MSSQL_Data (NAME=QLBanHang_Data, FILENAME='C:\MSSQL_Data\QLBanhang_data.MDF', Tạo CSDL QLBanhang với 2 tệp tin đặt trong thư mục vừa tạo: SIZE=50MB, MAXSIZE=200MB, - Tệp tin dữ liệu: kích thước khởi tạo 50MB, kích thước tối đa là 200MB, khi dữ liệu bị đầy thì tự động FILEGROWTH=10%) tăng kích thước lên 10% LOG ON - Tệp tin lưu vết: kích thước khởi tạo 10MB, kích (NAME=QLBanHang_Log, thước tối đa là không giới hạn, khi dữ liệu bị đầy thì FILENAME='C:\MSSQL_Data\QLBanhang_log.LDF', tự động tăng kích thước thêm 5MB SIZE=10MB, MAXSIZE=UNLIMITED, FILEGROWTH=5MB) 2/8/2018 Microsoft SQL Server 2005 5 2/8/2018 Microsoft SQL Server 2005 6 Tạo bảng dữ liệu Ví dụ về tạo bảng  Cú pháp tạo bảng đơn giản:  Ví dụ 2: Tạo bảng VATTU với cột định danh STT (số CREATE TABLE Tên_bảng thứ tự): (Tên_cột1 Kiểu_dữ_liệu [NOT NULL], CREATE TABLE VATTU Tên_cột2 Kiểu_dữ_liệu [NOT NULL] [, ... ]) (STT int identity(1,1),  Nếu muốn tạo cột định danh: MaVTu char(4) not null, Tên_cột Kiểu_dữ_liệu_số Identity(số_đầu,chỉ_số_tăng), TenVTu nvarchar(100) not null,  Nếu muốn tạo giá trị mặc định: DvTinh nvarchar(10) not null, Tên_cột Kiểu_dữ_liệu default giá_trị/hàm, PhanTram Real default 20) 2/8/2018 Microsoft SQL Server 2005 7 2/8/2018 Microsoft SQL Server 2005 8 2
  3. Tạo bảng dữ liệu (tiếp) Tạo bảng dữ liệu (tiếp)  Để tạo bảng có danh sách khóa chính, bổ sung:  Để kiểm tra miền giá trị, bổ sung: PRIMARY KEY (danh_sách_cột_khóa_chính) CHECK(biểu_thức_logic) vào cuối câu lệnh sau khi đã khai báo các cột vào cuối câu lệnh sau khi đã khai báo các cột  Để tạo bảng có danh sách khóa ngoại, bổ sung: FOREIGN KEY (cột_khóa_ngoại)  Để kiểm tra tính duy nhất của dữ liệu, bổ sung: REFERENCES Bảng_tham_chiếu(cột_tham_chiếu) UNIQUE(tên_cột) [on update cascade/no action] vào cuối câu lệnh sau khi đã khai báo các cột [on delete cascade/no action] vào cuối câu lệnh sau khi đã khai báo các cột 2/8/2018 Microsoft SQL Server 2005 9 2/8/2018 Microsoft SQL Server 2005 10 Ví dụ về tạo bảng (tiếp) Ví dụ về tạo bảng (tiếp)  Ví dụ 3: Tạo bảng CTDONDH (chi tiết đơn đặt hàng)  Ví dụ 4: Để tạo khóa ngoại cho bảng CTDONDH với khóa chính là cặp (SoDH,MaVTu), ràng buộc kiểm tham chiếu tới bảng VATTU thông qua MaVTu, ta tra giá trị cho cột SlDat là phải >0: thêm phát biểu sau vào cuối lệnh tạo bảng ở Ví dụ 3 Create Table CTDONDH (Lưu ý: bảng VATTU phải thiết lập cột MaVTu làm (SoDH char(4), khóa chính): MaVTu char(4), FOREIGN KEY (MaVTu) SlDat int, REFERENCES VATTU(MaVTu) Primary key(SoDH,MaVTu), Check(SlDat>0)) 2/8/2018 Microsoft SQL Server 2005 11 2/8/2018 Microsoft SQL Server 2005 12 3
  4. Ví dụ về tạo bảng (tiếp) Lưu ý  Ví dụ 5: Tạo bảng NCC (nhà cung cấp) với khóa chính là cột MaNCC (mã nhà cung cấp), cột Diachi  Khi tạo bảng dữ liệu, người dùng có thể tự đặt tên cho đảm bảo tính duy nhất về giá trị: các đối tượng ràng buộc (khóa chính, khóa ngoại, tính Create Table NCC duy nhất của giá trị, giá trị mặc định, kiểm tra miền (MaNCC char(3), giá trị) theo cú pháp: TenNCC nvarchar(100), Constraint Tên_Constraint Loại Các_tham_số Diachi nvarchar(100), Dienthoai varchar(20), Primary key(MaNCC), Unique(Diachi)) 2/8/2018 Microsoft SQL Server 2005 13 2/8/2018 Microsoft SQL Server 2005 14 Lưu ý Tạo bảng ảo Ví dụ 6: Cú pháp: Create table Vattu Create View Tên_bảng_ảo (MaVTu char(4), [with encryption ] à mã hóa câu lệnh Select TenVTu nvarchar(100), As [Câu lệnh select] DVTinh nvarchar(10) constraint DF_DVTinh default 'Chuaco', [with check option] à ngăn cản cập nhật dữ liệu Phantram real, đối với câu lệnh select có where constraint PK_Vattu primary key(MaVTu), constraint UQ_Vattu Unique(TenVTu), Lưu ý: Trong câu lệnh select này không được sử dụng constraint CK_Phantram Order by, compute, compute by, select into như trong check (Phantram between 0 and 100)) câu lệnh select tổng quát 2/8/2018 Microsoft SQL Server 2005 15 2/8/2018 Microsoft SQL Server 2005 16 4
  5. Ví dụ về tạo bảng ảo Giải ví dụ 7  Ví dụ 7: Tạo bảng ảo hiển thị thông tin chi tiết của tất Create view vwCTDONDH cả các đơn đặt hàng. Các thông tin hiển thị gồm: Số đơn đặt hàng (SoDH), mã vật tư (MaVTu), tên vật tư With Encryption (TenVTu), số lượng đặt (SlDat) As Select SoDH,CTDONDH.MaVTu,TenVTu,SlDat Dữ liệu được lấy từ 2 bảng: bảng CTDONDH (chi tiết from CTDONDH inner join VATTU đơn đặt hàng) và bảng VATTU on CTDONDH.MaVTu=VATTU.MaVTu 2/8/2018 Microsoft SQL Server 2005 17 2/8/2018 Microsoft SQL Server 2005 18 Chỉnh sửa cấu trúc CSDL Chỉnh sửa cấu trúc CSDL (tiếp)  Ví dụ 9: Thêm một file .ndf vào CSDL  Cú pháp: Alter Database QLBanhang ALTER DATABASE Tên_CSDL Add File Các_thao_tác_chỉnh_sửa (  Ví dụ 8: Đổi tên CSDL QLBanhang thành QLBanhang1: Name = QLBanhang_Data2, Alter Database QLBanhang Filename='C:\MSSQL_Data\QLBanhang_data2.NDF', Modify name = QLBanhang1 SIZE=5MB, MAXSIZE=100MB, FILEGROWTH=5MB ) 2/8/2018 Microsoft SQL Server 2005 19 2/8/2018 Microsoft SQL Server 2005 20 5
  6. Chỉnh sửa cấu trúc CSDL (tiếp) Chỉnh sửa cấu trúc bảng  Ví dụ 10: Loại bỏ file .ndf ra khỏi CSDL  Cú pháp chung: Alter Database QLBanhang ALTER TABLE Remove File QLBanhang_data2  Thêm một cột mới vào bảng:  Ví dụ 11: Chỉnh sửa thuộc tính của một file trong CSDL Alter Database QLBanhang Cú pháp: Modify file ALTER TABLE Tên_bảng ( ADD Tên_cột Kiểu_dữ_liệu Name = QLBanhang_Data, Ví dụ 12: Thêm cột Ghichu vào bảng CTDONDH Size = 60MB, à Thay đổi kích thước tệp Alter Table CTDONDH Filename='C:\QLBanhang_Data.mdf ' à thay đổi vị trí tệp Add Ghichu nvarchar(100) ) 2/8/2018 Microsoft SQL Server 2005 21 2/8/2018 Microsoft SQL Server 2005 22 Chỉnh sửa cấu trúc bảng (tiếp) Chỉnh sửa cấu trúc bảng (tiếp)  Sửa đổi kiểu dữ liệu của cột:  Xóa một cột khỏi bảng: Cú pháp: Cú pháp: ALTER TABLE Tên_bảng ALTER TABLE Tên_bảng ALTER COLUMN Tên_cột Kiểu_dữ_liệu_mới DROP COLUMN Tên_cột Ví dụ 13: Sửa kiểu dữ liệu của cột Ghichu thành Ví dụ 14: Xóa cột Ghichu khỏi bảng CTDONDH nvarchar(50) Alter Table CTDONDH Alter Table CTDONDH Drop Column Ghichu Alter column Ghichu nvarchar(50) 2/8/2018 Microsoft SQL Server 2005 23 2/8/2018 Microsoft SQL Server 2005 24 6
  7. Chỉnh sửa cấu trúc bảng (tiếp) Chỉnh sửa cấu trúc bảng (tiếp)  Thay đổi tên cột, tên bảng:  Thêm các đối tượng ràng buộc dữ liệu vào bảng: à Sử dụng thủ tục nội tại sp_rename à Sử dụng cú pháp: à Cú pháp: Alter Table Tên_bảng Exec sp_rename 'Tên_bảng [.Tên_cột]', 'Tên_mới' Add constraint Tên_Constraint Loại Các_tham_số Ví dụ 17: Thêm ràng buộc Địa chỉ là duy nhất, Điện thoại [, 'Column'] mặc định là 'Chua co' cho bảng nhà cung cấp: Ví dụ 15: Đổi tên bảng CTDONDH thành CTDH Alter Table NCC Exec sp_rename 'CTDONDH', 'CTDH' Add constraint DEF_NCC_Dienthoai Ví dụ 16: Đổi tên cột SoDH thành SDH default 'Chuaco' for Dienthoai, Exec sp_rename 'CTDH.SoDH', 'SDH','column' constraint UNQ_NCC_Diachi unique(diachi) 2/8/2018 Microsoft SQL Server 2005 25 2/8/2018 Microsoft SQL Server 2005 26 Chỉnh sửa cấu trúc bảng (tiếp) Chỉnh sửa cấu trúc bảng (tiếp)  Hủy bỏ đối tượng ràng buộc dữ liệu trong bảng:  Tắt chức năng kiểm tra của các ràng buộc dữ liệu à Sử dụng cú pháp: trong bảng: Alter Table Tên_bảng à Sử dụng cú pháp: Drop constraint Tên_Constraint Alter Table Tên_bảng Ví dụ 18: Xóa ràng buộc Điện thoại mặc định là 'Chua co' Nocheck constraint all/Tên_Constraint trong bảng nhà cung cấp: Ví dụ 19: Alter Table NCC Alter Table VATTU Drop constraint DEF_NCC_Dienthoai Nocheck constraint all 2/8/2018 Microsoft SQL Server 2005 27 2/8/2018 Microsoft SQL Server 2005 28 7
  8. Chỉnh sửa cấu trúc bảng (tiếp) Chỉnh sửa cấu trúc bảng ảo  Bật lại chức năng kiểm tra của các ràng buộc dữ liệu  Cú pháp: trong bảng: ALTER VIEW … à Sử dụng cú pháp:  Ví dụ 21: Sửa bảng ảo ở ví dụ 6, chỉ hiển thị: SoDH, Alter Table Tên_bảng TenVTu,SLdat Check constraint all/Tên_Constraint Alter view vwCTDONDH Ví dụ 20: With Encryption Alter Table VATTU As Select SoDH, TenVTu,SlDat Check constraint all from CTDONDH inner join VATTU on CTDONDH.MaVTu=VATTU.MaVTu 2/8/2018 Microsoft SQL Server 2005 29 2/8/2018 Microsoft SQL Server 2005 30 Xóa CSDL Xóa bảng  Cú pháp:  Cú pháp: DROP DATABASE Tên_CSDL DROP TABLE [TênCSDL.]Tên_bảng  Ví dụ 22: xóa CSDL QLBanhang  Ví dụ 23: xóa bảng VATTU Drop Database QLBanhang DROP TABLE VATTU  Ví dụ 24: Xóa bảng Test của CSDL Quanlybanhang_Test DROP TABLE Quanlybanhang_Test.dbo.Test 2/8/2018 Microsoft SQL Server 2005 31 2/8/2018 Microsoft SQL Server 2005 32 8
  9. Xóa bảng ảo  Cú pháp: Drop View [TênCSDL.]Tên_bảng_ảo  Ví dụ 25: Xóa view vwCTDONDH Drop View vwCTDONDH 2/8/2018 Microsoft SQL Server 2005 33 9
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

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