Cài đặt cơ sở dữ liệu sql server bao gồm các thao tác như tạo cơ sở dữ liệu, tạo bảng, thêm dữ liệu, thay đổi dữ liệu, xoá dữ liệu và xem dữ liệu.

Ngoài ra, chúng ta còn biết cách thiết lập ràng buộc dữ liệu hay thay đổi kích thước cơ sở dữ liệu. Trong bài học cài đặt cơ sở dữ liệu sql server, bạn sẽ được tìm hiểu và thực hành những thao tác đã liệt kê ở trên.

Cài đặt cơ sở dữ liệu sql server – Tạo cơ sở dữ liệu

Trong SQL Server, chúng ta có 2 cách để thực hiện thao tác này. Một là chúng ta sử dụng giao diện, hai là chúng ta sử dụng câu lệnh (script)

Cách 1: Tạo bằng giao diện

Chuột phải Databases -> Chọn New Database…

cai dat co so du lieu sql server 1

Nhập tên cơ sdliệu tại Database name -> Chọn OK để hoàn tất

cai dat co so du lieu sql server 2

Sau khi tạo thành công cơ sở dữ liệu tên QuanLySinhVien, chúng ta nhận được kết quả sau

cai dat co so du lieu sql server 3

Cơ sở dữ liệu sau khi tạo thành công gồm 2 tập tin (file): QuanLySinhVien.mdf và QuanLySinhVien_log.ldf.

QuanLySinhVien.mdf:tập tin dùng để lưu trữ dữ liệu của người dùng. Bất cứ khi nào người dùng thực hiện các thao tác thêm, thay đổi, hay xoá thì đều tác động đến tập tin này.

QuanLySinhVien_log.ldf: tập tin nhật ký. SQL Server sử dụng tập tin này để ghi nhận những thao tác của người dùng.

Hai tập tin này đều có các đặc điểm sau

Logical NameTên luận lý. SQL Server sử dụng tên này để nhận biết tập tin
Iniital SizeKích thước ban đầu
Auto GrowthKích thước được tăng thêm khi cần thiết
Max SizeKích thước tối đa
PathĐường dẫn thư mục lưu trữ tập tin
File NameTên tập tin được lưu trữ trên thiết bị vật lý của máy chủ

Cách 2: Tạo bằng câu lệnh

Khi tạo cơ sở dữ liệu, chúng ta có thể chỉ định tên các thiết lập khác là mặc định. Sau đây là cú pháp

create database databaseName

Ví dụ tạo cơ sở dữ liệu tên QuanLyHopDong

create database QuanLyHopDong

Một số trường hợp, quản trị viên muốn thiết lập về kích thước ban đầu (inital size), kích thước tăng thêm (growth), kích thước tối đa,…khi đó chúng ta sẽ sử dụng cú pháp sau

create database databaseName
on primary --Tạo tập tin data
(
  size = kích_thước_ban_đầu
  ,filegrowth = kích_thước_tăng
  ,maxsize = kích_thước_tối_đa
  ,filename = 'đường_dẫn\tên_csdl.mdf'
  ,name = tên_csdl
)
log on --Tạo tập tin log
(
  size = kích_thước_ban_đầu
  ,filegrowth = kích_thước_tăng
  ,maxsize = kích_thước_tối_đa
  ,filename = 'đường_dẫn\tên_csdl.ldf'
  ,name = tên_csdl_log
)

Sau đây là ví dụ tạo cơ sở dữ liệu QuanLyNhanSu với yêu cầu về tập tin dữ liệu (data) và tập tin nhật ký (log)

Đối với tập tin dữ liệu

  • Size = 100MB
  • FileGrowth = 10MB
  • MaxSize = 2GB
  • Path là  C:\SQL
  • FileName là QuanLyNhanSu.mdf
  • Logical name là QuanLyNhanSu

Đối với tập tin nhật ký

  • Size = 200MB
  • FileGrowth = 20MB
  • MaxSize = Không giới hạn
  • Path: C:\SQL
  • FileName là QuanLyNhanSu.ldf
  • Logical name là QuanLyNhanSu_log
create database QuanLyNhanSu 
on primary --Tập tin data
(
  size = 100MB
  ,filegrowth = 10MB
  ,maxsize = 2GB
  ,filename = 'c:\sql\QuanLyNhanSu.mdf'
  ,name = QuanLyNhanSu
)
log on --Tập tin log
(
  size = 200MB
  ,filegrowth = 20MB
  ,maxsize = unlimited
  ,filename = 'c:\sql\QuanLyNhanSu.ldf'
  ,name = QuanLyNhanSu_log
)

Cài đặt cơ sở dữ liệu sql server – Tạo bảng

Bảng dữ liệu dùng để chứa dữ liệu. Khi cài đặt trên SQL Server, chúng ta cần phải biết về tên bảng, danh sách cột cùng kiểu dữ liệu, khoá chính và khoá ngoại (nếu có).

Giả sử chúng ta muốn tạo 2 bảng Lop và SinhVien của cơ sở dữ liệu QuanLyDaoTao với thông tin chi tiết như sau. Luu ý tham khảo kiểu dữ liệu của SQL Server

Bảng Lop

Tên cộtKiểu dữ liệuGhi chú
MaLopvarchar(20)Khoá chính
TenLopnvarchar(50)

Bảng SinhVien

Tên cộtKiểu dữ liệuGhi chú
MaSVvarchar(15)Khoá chính
TenSVnvarchar(50)
GioiTinhnvarchar(3)
NgaySinhdate
MaLopvarchar(20)Khoá ngoại

Câu lệnh tạo bảng có khoá chính, không có khoá ngoại

create table tên_bảng (
  Tên_cột_thứ_1 Kiểu_dữ_liệu
  ,Tên_cột_thứ_2 Kiểu_dữ_liệu
  ,...
  ,primary key (danh_sách_khoá_chính)
)

Câu lệnh tạo bảng có khoá chính và khoá ngoại

create table tên_bảng (
  Tên_cột_thứ_1 kiểu_dữ_liệu
  ,Tên_cột_thứ_2 kiểu_dữ_liệu
  ,...
  ,primary key(danh_sách_khoá_chính)
  ,foreign key(khoá_ngoại) references Bảng_tham_chiếu
)

Sau đây là câu lệnh tạo bảng Lop và SinhVien

create table Lop (
  MaLop varchar(20)
 ,TenLop nvarchar(50)
 ,primary key(MaLop)
)
create table SinhVien (
  MaSv varchar(15)
 ,TenSv nvarchar(50)
 ,GioiTinh nvarchar(5)
 ,NgaySinh date
 ,MaLop varchar(20)
 ,primary key (MaSv)
 ,foreign key (MaLop) references Lop
)

Cài đặt cơ sở dữ liệu sql server – Thêm dữ liệu

Là thao tác nhập dữ liệu vào cho các bảng. Chúng ta thực hiện việc này bằng nhiều cách, một trong những cách đó là bằng câu lệnh.

Câu lệnh thêm dữ liệu trong trường hợp dữ liệu thêm vào khớp với số lượng cột

insert into tên_bảng values(Giá_trị_1,Giá_trị_2,…)

Ví dụ thêm dữ liệu cho bảng Lop. Đối với dữ liệu là chuỗi và ngay tháng năm, chúng ta phải đặt chúng trong ‘ ‘

insert into Lop values('26CCHT01',N'Quản trị mạng khoá 26')

Câu lệnh thêm dữ liệu trong trường hợp một số cột bị bỏ qua

insert into tên_bảng(cột_1,cột_2,cột_3,…) values(Giá_trị_1,Giá_trị_2,Giá_trị_3,…)

Ví dụ thêm dữ liệu cho bảng Lop với tên lớp bị bỏ qua. Sau tên bảng là tên của những cột được thêm. Nghĩa là những cột bị bỏ qua sẽ không được chỉ định.

insert into Lop(MaLop) values('26CCHT02')

Cài đặt cơ sở dữ liệu sql server – Thay đổi dữ liệu

Là thao tác thay đổi dữ liệu đã tồn tại trước đó dựa theo điều kiện được chỉ định trước. Nếu không chỉ định điều kiện thì tất cả dữ liệu của bảng sẽ bị tác động. Sau đây là câu lệnh thực hiện thay đổi dữ liệu cho bảng.

update tên_bảng set
  tên_cột_1 = Giá_trị
  ,tên_cột_2 = Giá_trị
  ,...
where điều_kiện

Ví dụ thay đổi tên lớp có mã là 26CCHT01 thành Cao đẳng chính quy nghề QTM khoá 26

update Lop set
 TenLop = N'Cao đẳng chính quy nghề QTM khoá 26'
where MaLop = '26CCHT01'

Cài đặt cơ sở dữ liệu sql server – Xoá dữ liệu

Không giống như thao tác thêm hay thay đổi dữ liệu, thao tác xoá dữ liệu sẽ làm mất dữ liệu của bảng. Vì vậy, khi chúng ta thực hiện thao tác này phải hết sức cẩn thận. Và SQL Server có kiểm tra ràng buộc về khoá ngoại.

Xoá tất cả dữ liệu của bảng

delete from tên_bảng

Xoá những dòng dữ liệu thoả điều kiện được chỉ định trước

delete from tên_bảng where điều_kiện

Câu lệnh delete ở trên chỉ thực hiện xoá dữ liệu của bảng, cấu trúc bảng vẫn còn tồn tại. Nếu chúng ta muốn xoá bảng hoặc xoá cơ sở dữ liệu, hãy sử dụng các câu lệnh sau

Câu lệnh xoá bảng

drop table tên_bảng

Câu lệnh xoá cơ sở dữ liệu (Một khi cơ sở dữ liệu bị xoá thì tất cả các bảng sẽ bị xoá theo và đồng nghĩa với việc tất cả dữ liệu cũng sẽ bị xoá hết)

drop database tên_CSDL

Tổng kết bài cài đặt cơ sở dữ liệu sql server

  • Tạo cơ sở dữ liệu
  • Tạo bảng
  • Thêm dữ liệu
  • Thay đổi dữ liệu
  • Xoá dữ liệu

Bài tập thực hành cài đặt cơ sở dữ liệu sql server

Câu 1: Tạo cơ sở dữ liệu QuanLyBanHang với yêu cầu như sau

  • Data File: kích thước khởi tạo 50MB; mỗi lần tăng 10MB; giới hạn kích thước tập tin không tăng hơn 200MB.
  • Log File: kích thước khởi tạo 10MB; mỗi lần tăng 5MB; không giới hạn việc tăng kích thước tập tin.

Câu 2: Tạo bảng cho cơ sở dữ liệu QuanLyBanHang

Bảng VatTu

Tên cộtKiểu dữ liệuGhi chú
MaVTuChar (4)Khoá chính
TenVTuNVarChar (100)
DvTinhNVarChar (10)
PhanTramint

Bảng NhaCC

Tên cộtKiểu dữ liệuGhi chú
MaNhaCCChar (3)Khoá chính
TenNhaCCNVarChar (100)
DiaChiNVarchar (200)
DienThoaiNVarchar (20)

Bảng DonDH

Tên cộtKiểu dữ liệuGhi chú
SoDHChar (4)Khoá chính
NgayDHDateTime
MaNhaCCChar (4) Khoá ngoại

Bảng CTDonDH (Lưu ý bảng này có 2 khoá ngoại là SoDH và MaVTu

Tên cộtKiểu dữ liệuGhi chú
SoDHChar  Khoá chính
MaVTuChar
SLDatInt

Bảng PNhap

Tên cộtKiểu dữ liệuGhi chú
SoPNChar (4)Khoá chính
NgayNhapDatetime
SoDHChar (4)Khoá ngoại

Bảng CTPhap (Lưu ý bảng này có 2 khoá ngoại là SoPN và MaVTu)

Tên cộtKiểu dữ liệuĐộ rộng
SoPNChar (4)Khoá chính  
MaVTuChar (4)
SLNhapInt
DGNhapMoney

Bảng PXuat

Tên cộtKiểu dữ liệuGhi chú
SoPXChar (4)Khoá chính
NgayXuatDatetime
TenKHNVarchar (100)

Bảng CTPXuat (Bảng này có 2 khoá ngoại là SoPX và MaVTu)

Tên cộtKiểu dữ liệuGhi chú
SoPXChar (4)Khoá chính  
MaVTuChar (4)
SLXuatInt
DGXuatMoney

Bảng TonKho (Bảng này có một khoá ngoại là MaVTu)

Tên cộtKiểu dữ liệuGhi chú
NamThangChar (6)  Khoá chính
MaVTuChar (4)
SLDauInt
TongSLNInt
TongSLXInt
SLCuoiInt

Câu 3: Tạo Database Diagram

cai dat co so du lieu sql server 4

Câu 4: Thêm dữ liệu cho các bảng

Bảng NHACC
ManccTennhaccDiachiDienthoai
C01Lê Minh Trí54 Hậu Giang Q6 HCM8781024
C02Trần Minh Thạch145 Hùng Vương Mỹ Tho7698154
C03Hồng Phương154/85 Lê Lai Q1 HCM9600125
C04Nhật Thắng198/40 Hương Lộ 14 QTB HCM8757757
C05Lưu Nguyệt Quế178 Nguyễn Văn Luông Đà Lạt7964251
C07Cao Minh Trung125 Lê Quang Sung Nha TrangChưa có
Bảng VATTU
MavtuTenvtuDvTinhPhantram
DD01Đầu DVD Hitachi 1 đĩaBộ40
DD02Đầu DVD Hitachi 3 đĩaBộ40
TL15Tủ lạnh Sanyo 150 litCái25
TL90Tủ lạnh Sanyo 90 litCái20
TV14Tivi Sony 14 inchesCái15
TV21Tivi Sony 21 inchesCái10
TV29Tivi Sony 29 inchesCái10
VD01Đầu VCD Sony 1 đĩaBộ30
VD02Đầu VCD Sony 3 đĩaBộ30
Bảng DONDH
SodhNgaydhManhacc
D00115/01/2007C03
D00230/01/2007C01
D00310/02/2007C02
D00417/02/2007C05
D00503/01/2007C02
D00603/12/2007C05
Bảng CTDONDH
SodhMavtuSlDat
D001DD0110
D001DD0215
D002VD0230
D003TV1410
D003TV2920
D004TL9010
D005TV1410
D005TV2920
D006TV1410
D006TV2920
D006VD0120
Bảng PNHAP
SopnNgaynhapSodh
N00117/01/2007D001
N00220/01/2007D001
N00331/01/2007D002
N00415/02/2007D003
Bảng CTPNHAP
SopnMavtuSlNhapDgNhap
N001DD0182500000
N001DD02103500000
N002DD0122500000
N002DD0253500000
N003VD02302500000
N004TV1452500000
N004TV29123500000
Bảng PXUAT
SopxNgayxuatTenkh
X00117/01/2007Nguyễn Ngọc Phương Nhi
X00225/01/2007Nguyễn Hồng Phương
X00331/01/2007Nguyễn Tuấn Tú
Bảng CTPXUAT
SopxMavtuSlXuatDgXuat
X001DD0123500000
X002DD0113500000
X002DD0254900000
X003DD0133500000
X003DD0224900000
X003VD0210 3250000
Bảng TONKHO
NamthangMavtuSLDauTongSLNTongSLXSLCuoi
200701DD0101064
200701DD0201578
200701VD020301020
200702DD014004
200702DD028008
200702VD02200020
200702TV145005
200702TV29120012

BÌNH LUẬN

Please enter your comment!
Please enter your name here