Tạo table trong SQL Server 2014 (Bài 3)
Tạo table trong sql server 2014 là bước tiếp theo cần làm sau khi chúng ta đã tạo database. Một bảng (table) thuộc một database. Mỗi table bao gồm tên table, danh sách cột (column), khóa chính, khóa ngoại.
Table là nơi chứa thông tin. Ví dụ table tên NhanVien chứa thông tin về nhân viên trong một công ty.
Bên dưới là thông tin của các nhân viên bao gồm mã nhân viên (MaNV), họ tên nhân viên (HoTen), giới tính nhân viên (GioiTinh), ngày sinh của nhân viên (NgaySinh) và phòng ban mà nhân viên làm việc (MaPhong)
MaNV | HoTen | GioiTinh | NgaySinh | MaPhong |
91110010003 | Phan Tuấn Cường | Nam | 03/03/1993 | 25CCHT02 |
91110010004 | Huỳnh Chí Tâm | Nam | 08/03/1993 | 25CCHT02 |
91110010005 | Vương Chí Dũng | Nam | 14/04/1991 | 25CCHT02 |
93510010005 | Phạm Đức Nguyên | Nam | 27/07/1993 | 25CCDH02 |
93510010008 | Trương Mỹ Yến Nhi | Nữ | 03/10/1993 | 25CCDH02 |
93510010009 | Hồ Võ Thanh Tùng | Nam | 06/09/1990 | 25CCDH02 |
93510010010 | Trần Quang Minh | Nam | 18/12/1989 | 25CCDH02 |
99510170307 | Phạm Văn Đình | Nam | 05/06/1991 | 25CCDH02 |
99510180112 | Trần Thùy Dương | Nam | 07/12/1992 | 25CCDH02 |
99510180150 | Lê Hoàng Khiêm | Nam | 22/03/1993 | 25CCDH02 |
Tạo table trong sql server 2014 – Các quy tắc đặt tên
Đặt tên table (bảng): Tên table phải phản ánh thực thể. Dùng các kí tự “_” để phân tách các từ và không chứa các từ “table” hay “file” trong tên bảng. Tên table là duy nhất trong một database.
Đặt tên column (cột): Tên column phải dựa trên tên của thuộc tính. Dùng các kí tự “_” để phân tách các từ và tên cột là duy nhất trong table.
Tạo table trong sql server 2014 – Câu lệnh tạo table
Create Table Tên_Bảng (
Tên_Cột Kiểu_Dữ_Liệu(Kích cỡ)
,Tên_Cột Kiểu_Dữ_Liệu(Kích cỡ)
,...
,primary key (Khoá chính)
,foreign key (Khoá ngoại) references Bảng_Tham_Chiếu(Khoá ngoại)
)
Trong đó
- Bảng tham chiếu phải tồn tại trước và có khoá chính tham gia làm khoá ngoại trong bảng đang được tạo.
- Nếu tạo bảng không có khoá ngoại thì chúng ta loại bỏ dòng
,foreign key (Khoá ngoại) references Bảng_Tham_Chiếu(Khoá ngoại)
Tạo table trong sql server 2014 – Kiểu dữ liệu
Kiểu chuỗi
Kiểu dữ liệu | Miêu tả |
char(n) | Cố định độ rộng chuỗi. Tối đa 8000 ký tự |
varchar(n) | Không cố định độ rộng chuỗi. Tối đa 8000 ký tự |
varchar(max) | Không cố định độ rộng chuỗi. Tối đa 1,073,741,824 ký tự |
text | Không cố định độ rộng chuỗi. Tối đa 2GB dữ liệu văn bản |
nchar(n) | Tương tự kiểu dữ liệu char nhưng hỗ trợ Unicode |
nvarchar(n) | Tương tự kiểu dữ liệu varchar nhưng hỗ trợ Unicode |
nvarchar(max) | Tương tự kiểu dữ liệu varchar(max) nhưng hỗ trợ Unicode |
ntext | Tương tự kiểu dữ liệu text nhưng hỗ trợ Unicode |
Kiểu số
Kiểu dữ liệu | Miêu tả |
Số nguyên | |
tinyint | Chứa các số từ 0 đến 255. |
smallint | Chứa các số từ -32,768 đến 32,767. |
int | Chứa các số từ -2,147,483,648 đến 2,147,483,647. |
Số thực | |
float | Chứa các số từ -1.79E + 308 đến 1.79E + 308. |
Kiểu date/time
Kiểu dữ liệu | Miêu tả |
date | Bao gồm ngày, tháng, năm |
datetime | Bao gồm ngày tháng năm và giờ |
Tạo table trong sql server 2014 – Ví dụ
Giả sử chúng ta cần tạo 2 bảng PHONGBAN gồm có tên phòng ban (khoá chính), số điện thoại; NHANVIEN gồm mã nhân viên (khoá chính), tên nhân viên, giới tính và tên phòng ban (khoá ngoại) thuộc database tên QuanLyNhanSu
Câu lệnh tạo bảng PHONGBAN
Create Table PHONGBAN (
TenPhong nvarchar(30)
,SDT varchar(15)
,primary key(TenPhong)
)
Câu lệnh tạo bảng PHONGBAN
Create Table NHANVIEN (
MaNv char(15)
,TenNv nvarchar(50)
,GioiTinh nvarchar(4)
,TenPhong nvarchar(30)
,primary key(MaNv)
,foreign key(TenPhong) references PHONGBAN(TenPhong)
)
Thực hiện với Microsoft SQL Server Management Studio
Sau khi thực thi thành công
Tạo table trong sql server 2014 – Bài tập thực hành
Cho database (cơ sở dữ liệu) tên QuanLyBanHang bao gồm các table sau
VATTU
Tên cột | Kiểu dữ liệu | Ghi chú |
MaVTu | Char (4) | Khoá chính |
TenVTu | NVarChar (100) | |
DvTinh | NVarChar (10) | |
PhanTram | Int |
NHACC
Tên cột | Kiểu dữ liệu | Ghi chú |
MaNhaCC | Char (3) | Khoá chính |
TenNhaCC | NVarChar (100) | |
DiaChi | NVarchar (200) | |
DienThoai | NVarchar (20) |
DONDH
Tên cột | Kiểu dữ liệu | Ghi chú |
SoDH | Char (4) | Khoá chính |
NgayDH | DateTime | |
MaNhaCC | Char (4) | Khoá ngoại |
CTDONDH
Tên cột | Kiểu dữ liệu | Ghi chú |
SoDH | Char | Khoá chính |
MaVTu | Char | |
SLDat | Int |
PNHAP
Tên cột | Kiểu dữ liệu | Ghi chú |
SoPN | Char (4) | Khoá chính |
NgayNhap | Datetime | |
SoDH | Char (4) | Khoá ngoại |
CTPNHAP
Tên cột | Kiểu dữ liệu | Ghi chú |
SoPN | Char (4) | Khoá chính |
MaVTu | Char (4) | |
SLNhap | Int | |
DGNhap | Money |
PXUAT
Tên cột | Kiểu dữ liệu | Ghi chú |
SoPX | Char (4) | Khoá chính |
NgayXuat | Datetime | |
TenKH | NVarchar (100) |
CTPXUAT
Tên cột | Kiểu dữ liệu | Ghi chú |
SoPX | Char (4) | Khoá chính |
MaVTu | Char (4) | |
SLXuat | Int | |
DGXuat | Money |
TONKHO
Tên cột | Kiểu dữ liệu | Ghi chú |
NamThang | Char (6) | Khoá chính |
MaVTu | Char (4) | |
SLDau | Int | |
TongSLN | Int | |
TongSLX | Int | |
SLCuoi | Int |
Database diagram (Tạo database diagram: Chuột phải Database Diagrams -> New Database Diagram -> Chọn tất cả các table trong hộp thoại -> chọn Add)