Professional Documents
Culture Documents
TABLES
1
NỘI DUNG
I. Các kiểu dữ liệu
V. Xóa Table
2
I- CÁC KiỂU DỮ LiỆU
3
1- Số Chính Xác - Exact Numerics
• Bigint (8 bytes) giá trị từ - 263 đến 263-1
• Int :(4 bytes) giá trị từ - 231 đến 231 - 1.
• SmallInt : (2 bytes) giá trị từ - 215 đến 215 - 1.
• Tinyint : (1 byte) giá trị từ 0 đến 255.
• Bit : có giá trị 0, 1 hoặc NULL.
• Decimal [ ( p [, s ]) ]
– P (precision) có giá trị từ 1 đến 38, là tổng số chữ số tối đa bên phải và
bên trái dấu chấm thập phân. Mặc định là 18.
– S (Scale) có giá trị từ 0 đến P, là số chữ số lẻ bên phải dấu chấm thập
phân. Mặc định bằng 0
• Numeric [ ( p [, s ] ) ]: tương tự Decimal
• Money , SmallMoney
4
2- Số gần đúng - Approximate Numerics
a) Float [( n )] :
• Miền giá trị tuyệt đối từ 2.23E- 308 đến 1.79E +308
• n là số bít dùng lưu phần định trị, có giá trị từ 1 – 53, mặc định
là 53.
– Với n [1, 24]: 4 byte, với độ chính xác là 7 chữ số thập phân.
– Với n [25, 53]: 8 byte, với độ chính xác là 15 chữ số thập phân.
b) Real : 4 byte, Miền giá trị tuyệt đối 1.18E- 38 đến 3.40E +38.
5
3- Ngày giờ - Date And Time
a) DateTime :
b) SmallDateTime :
6
4- Chuỗi ký tự - Character Strings
• Char [(n)] : độ dài cố định, tối đa là 8000 byte.
7
5- Chuổi ký tự Unicode
- Unicode Character Strings
• nChar [( n )] : độ dài cố định, tối đa là 4000 ký tự.
Chú .: Hằng chuỗi Unicode bao trong dấu nháy đơn và phải
8
6- Dữ liệu nhị phân - Binary Strings
9
7- Other Data Types
• Sql_Variant : dùng lưu giá trị của các kiểu dữ liệu khác
trong SQL Server ngoại trừ các kiểu text, ntext, Image, timestamp, và
sql_variant.
10
II- CÁC PHÉP TOÁN
1. Các phép toán số học:
+ (cộng), - (trừ)
11
II- CÁC PHÉP TOÁN (TT)
5. Các phép toán phạm vi:
a) <BT> IS [NOT] NULL
b) <BT> [NOT] IN (<danh sách giá trị>)
c) <BT> [NOT] BETWEEN <Min> AND <Max>
d) <BT> [NOT] LIKE ‘Mẫu văn bản’
12
III- TẠO TABLE
13
1- Bằng Lệnh CREATE TABLE:
Cú pháp :
CREATE TABLE TableName
(
column_name data_type [<column_constraint>]
| computer_column_name AS <expression> [PERSISTED]
| <table_constraint> [ , ...n]
)
[ON { file_group | PRIMARY } ]
14
1.1 Khai báo cột dữ liệu
• CREATE TABLE SanPham
(
MaSP Smallint ,
TenSP varchar(30) ,
DonGia Money ,
SoTon Real
)
• CREATE TABLE DDH
(
MaDH Int ,
MaNCC Int ,
NgayLap DateTime ,
NgayYCGiao DateTime
)
15
1.2 Khai báo cột biểu thức
computer_column_name AS expression
• Cột tính toán, là cột chỉ đọc, chứa dữ liệu tính toán từ những cột
khác. Mặc định không lưu giá trị cột tính toán trong table.
16
1.3 Khai báo ràng buộc dữ liệu
(Constraint)
Có 2 cách khai báo ràng buộc trên table phụ thuộc vào số
cột tham gia điều kiện của ràng buộc:
b) Ràng buộc dữ liệu trên nhiều cột của Table (Table Constraint)
17
a) Các loại ràng buộc trên một cột
18
Ví dụ: Khai báo ràng buộc trên 1 cột
CREATE TABLE LoaiSP
(
MaLoaiSP Smallint primary key,
TenLoaiSanPham nvarchar(100)
)
On Delete No Action
On Update Cascade
20
b- Các loại ràng buộc trên nhiều cột
21
Ví dụ - Khai báo khóa chính gồm nhiều cột
)
22
Ví dụ - Khai báo ràng buộc liên thuộc tính
23
1.4- Khai báo cột tự động điền giá trị phân biệt
- Người dùng không thể nhập dữ liệu cho cột có thuộc tính này.
Mỗi table chỉ có một cột khai báo thuộc tính Identity.
24
2- Sử dụng Object Explorer
25
26
IV- THAY ĐỔI CẤU TRÚC - RÀNG BUỘC
27
1- Sử dụng lệnh ALTER TABLE
Cú pháp chung:
| {CHECK | NOCHECK}
Ví dụ:
ALTER TABLE KhachHang
ALTER COLUMN TenKH CHAR (40) NULL
29
1.2- Thêm cột mới
ALTER TABLE <table_name>
ADD <Thông tin cột mới> [,...]
CREATE TABLE NhanVien (
GO
ALTER TABLE NhanVien
ADD NoiSinh Varchar(20) DEFAULT 'Đồng Nai',
MaNVQL Int NULL Constraint fk_MaNV References NhanVien(MaNV)
30
Chú ý: khi thêm cột NOT NULL
Trong trường hợp Table đã có dữ liệu, nếu bạn cần thêm cột với
ràng buộc NOT NULL thì có thể thực hiện một trong 2 cách sau:
(iii) Đổi lại thuộc tính của cột thành NOT NULL.
• Cách 2: Thêm cột mới có ràng buộc Default và thuộc tính WITH
VALUES để điền tự động giá trị cho các dòng đang tồn tại trong
bảng.
Ví dụ:
ALTER TABLE SanPham
DROP COLUMN SoTon
32
5- Hủy bỏ RB khỏi bảng:
ALTER TABLE table_name
DROP CONSTRAINT <Tên RBTV>
Ví dụ:
33
6- Kích hoạt hay tạm ngưng kiểm tra
ràng buộc Foreign key và Check
ALTER TABLE table_name
{CHECK | NOCHECK} CONSTRAINT {ALL | tênRB [,...n]}
Ví dụ :
CONSTRAINT chk_DonGia
CONSTRAINT chk_DonGia
34
7- Đổi tên cột :
SP_RENAME 'TableName.OldName',
'NewName', 'COLUMN'
Ví dụ:
35
2- Sử dụng Object Explorer
36
V- XÓA TABLE :
DROP TABLE <tên bảng> [, …n]
Chú ý:
Không thể xóa Table cha được tham
chiếu bởi Table khác.
37
VI- ĐỔI TÊN BẢNG:
EXEC SP_RENAME 'OldName', 'NewName'
38
VII- MÔ HÌNH QUAN HỆ
39
1- Tạo mới mô hình quan hệ
B1: Click phải vào Database Diagram và chọn New Database->Diagram
B2: Chọn bảng cho mô hình
B3: Click nút Close kết thúc quá trình tạo mô hình
40
41
BÀI TẬP
THỰC HÀNH BÀI TẬP 1
42
CẢM ƠN
43