Professional Documents
Culture Documents
SERVER
I. Tổng quan :
1. SQL SerVer laø một hệ quản trị CSDL quan hệ
A. Cơ Sở Dữ Liệu Quan Hệ :
Một bảng phải coù toái thiểu một cột,Thứ tự cột không
quan trọng
Heä Thoáng SQL Server coù theå trieån khai cho moät
heä thoáng kieåu Client-Server hoaëc trieån khai cho
moät heä thoáng maùy ñôn
Heä thoáng ñöôïc trieån khai phuï thuoäc vaøo soá
ngöôøi truy caäp ñoàng thôøi ñeán CSDL ñeå thöïc
hieän moät coâng vieäc
Caùc heä thoáng SQL Server
Trong moâ hình Client-Server ta coù theå trieån
khai theo moâ hình 2 lôùp hoaëc 3 lôùp
Caùc heä thoáng SQL Server
II.Caøi Đặt SQL Server
A.Yeâu cầu phần cứng :
Choïn
II.Caøi ñaët Personal Edition SQL
Server(tt)
2.Maøn hình sau xuaát hieän
Chọn Chọn
II.Caøi ñaët Personal Edition SQL
Server(tt)
3.Maøn hình sau xuaát hieän
Chọn
II.Caøi ñaët Personal Edition SQL Server(tt)
4.Maøn hình sau xuaát hieän
Chọn
II.Caøi ñaët Personal Edition SQL
Server(tt)
5.Maøn hình sau xuaát hieän
Chọn
II.Caøi ñaët Personal Edition SQL
Server(tt)
6.Maøn hình sau xuaát hieän
Chọn
Chọn
II.Caøi ñaët Personal Edition SQL
Server(tt)
Chọn
II.Caøi ñaët Personal Edition SQL
Server(tt)
Chọn
Chọn
II.Caøi ñaët Personal Edition SQL
Server(tt)
Chọn
II.Caøi ñaët Personal Edition SQL
Server(tt)
Chọn
II.Caøi ñaët Personal Edition SQL
Server(tt)
Chọn
II.Caøi ñaët Personal Edition SQL
Server(tt)
III.Caùc tieän ích cuûa SQL Server
1.Tieän ích SQL Server Management Studio :Maøn
hình quaûn lyù caùc ñoái töôïng coù trong SQL
Server 2005
Taïo vaø quaûn lyù töø ñieån tra cöùu döõ lieäu
Quaûn lyù caáu hình heä thoáng
Taïo vaø quaûn lyù caùc döõ lieäu taïo baùo caùo
Khôûi ñoäng tieän ích SQL Server Management Studio
Choïn
Keát
quaû
III.Caùc tieän ích cuûa SQL Server
Choïn caùc cheá ñoä hieån thò keát quaû cuûa caâu
truy vaán
Choïn Keát
quaû
III.Caùc tieän ích cuûa SQL Server
Choïn caùc cheá ñoä hieån thò keát quaû cuûa caâu
truy vaán
Choïn
III.Caùc tieän ích cuûa SQL Server
3>Books
3> Online : phaàn trôï giuùp cuûa SQL SerVer
KHÔÛI ÑOÄNG : START -> PROGRAMS-> MICROSOFT SQL
SERVER 2005-> DOCUMENTION AND TUTORIALS->SQL
SERVER BOOK ONLINE
III.Caùc tieän ích cuûa SQL Server
4>The SQL Server Configuration Manager : caáu hình heä thoáng
KHÔÛI ÑOÄNG : START -> PROGRAMS-> MICROSOFT SQL
SERVER 2005-> CONFIGURATION-> SERVER
CONFIGURATION MANAGER
III.Caùc tieän ích cuûa SQL Server
CSDL
– Tên bảng (Table Name) Độ dài<= 128 ký tự. Tên bảng phải duy nhất
bên trong phạm vi của người đã tạo ra nó trong một CSDL
– Tên cột (Column Name): là tên của các cột bên trong bảng, tên của các
cột bên trong bảng phải duy nhất.
– Kiểu dữ liệu (Data Type):qui định kiểu dữ liệu mà cột sẽ lưu trữ bên
trong bảng.
Chöông II: Xaây döïng moät CSDL trong
SQL Server
– Độ dài dữ liệu (Data Length): dùng để qui định độ
dài dữ liệu mà cột sẽ lưu trữ đối với các kiểu dữ liệu
dạng chuỗi.
Identity
Chöông II: Xaây döïng moät CSDL trong
SQL Server
– Cho phép để trống dữ liệu (Allow
Null): qui định dữ liệu có thể được
phép để trống hay là phải nhập
– Giá trị mặc định (Default Value): là
giá trị mặc nhiên sẽ được gán vào cột
dữ liệu khi người sử dụng thêm mới
một mẫu tin nhưng lại để trống giá trị
tại cột dữ liệu đó.
Chöông II: Xaây döïng moät CSDL trong
SQL Server
Tạo Bảng trong Sql Server
– Cách 1: Sử dụng tiện ích
Management Studio
Mở CSDL Click
chuột phải trên đối
tượng Tables, chọn
chức năng New
Table... trong thực
đơn tắt.
Chöông II: Xaây döïng moät CSDL trong
SQL Server
Màn hình sau xuất hiện :
Column Name :Nhập tên Cột
Data Type : chọn kiểu dữ liệu
Allow Nulls : dữ liệu của cột có được rỗng hay không
Chöông II: Xaây döïng moät CSDL trong
SQL Server
Trong hộp thoại Column Properties :
Default Value or Binding :giá trị mặt
định của cột
Identity Specification : dữ liệu của cột
có tự tăng ?
Is Identity : tự tăng
Cú pháp:
CREATE TABLE Tên_bảng
(
Tên_cột_1 Kiểu_dữ_liệu_số IDENTITY [(Số_bắt_đầu, Chỉ_số_tăng)] ,
Tên_cột_2 Kiểu_dữ_liệu [NOT NULL] [ ,...]
)
•Trong một bảng chỉ có tối đa một cột được chỉ định làm cột định danh.
•Số bắt đầu: là số mà SQL Server sử dụng để cấp phát cho mẫu tin đầu tiên.
Mặc định là 1.
•Chỉ số tăng: là chỉ số mà SQL Server cộng lên để cấp phát cho từng mẫu tin
kết tiếp. Mặc định là 1.
Chöông II: Xaây döïng moät CSDL trong
SQL Server
Tính toàn vẹn dữ liệu trong cơ sở dữ liệu : các ràng buộc trong SQL Server được quản lý bởI hai đốI tượng :CONSTRAINT và TRIGGER
Constraint : quản lý các ràng buộc như :
– Ràng buộc dữ liệu duy nhất
– Ràng buộc dữ liệu tồn tại
– Ràng buộc miền giá trị
Trigger :Quản lý các ràng buộc phức tạp,liên quan đến dữ liệu trên nhiều bảng
Chöông II: Xaây döïng moät CSDL trong
SQL Server
Xây dựng các Constraint
A>Kiểm tra duy nhất dữ liệu :có hai loại
Primary Key (khoá chính ) :dữ liệu khác
Trong một bảng chỉ định nghĩa một ràng buộc khoá chính
nhưng có thể định nghĩa nhiều ràng buộc dữ liệu duy nhất
Chöông II: Xaây döïng moät CSDL trong
SQL Server
Ví dụ :
CREATE TABLE VATTU
(
MAVTU varchar(4) not null,
TenVtu varchar(100),
Constraint PK_Vattu_Mavtu primary key(Mavtu),
constraint UQ_Vattu_tenvtu unique(tenvtu)
)
Chöông II: Xaây döïng moät CSDL trong
SQL Server
B>Kiểm tra tồn tại Dữ liệu :Định nghĩa khoá ngoại
[CONSTRAINT FK_Tên_bảng_Tên_cột]
FOREIGN KEY
(Danh_sách_cột_khóa_ngoại)
REFERENCES Tên_bảng_tham_chiếu
(Danh_sách_cột_tham_chiếu)
[CONSTRAINT CK_Tên_bảng_Tên_cột]
CHECK (Biểu_thức_luận_lý)
Chöông II: Xaây döïng moät CSDL trong
SQL Server
B>Ví dụ :
CREATE TABLE CTHOADON
(
SOHD Varchar(3) not null ,
MAVTU Varchar(3) not null,
Soluong int,
Dongia float,
CONSTRAINT CK_CTHOADON_SOLUONG
CHECK (Soluong>0),
CONSTRAINT CK_CTHOADON_DonGia
CHECK (Dongia>0)
)
Chöông II: Xaây döïng moät CSDL trong
SQL Server
d>Thêm Costraint vào bảng đã có
Cú pháp chung:
ALTER TABLE Tên_bảng
ADD [ CONSTRAINT Tên_Constraint ]
LOẠI Các_tham_số [ , ...]
Chöông II: Xaây döïng moät CSDL trong
SQL Server
Cú pháp chi tiết từng loại constraint
PRIMARY KEY
1>Định Nghĩa :
– Bảng ảo là một đối tượng chứa câu lệnh Select lấy dữ liệu
Từ các bảng trong csdl
- Khi truy cập vào CSDL ,người sử dụng không phân biệt
được Bảng ảo và Bảng Thật
- View giúp người sử dụng dễ dàng truy cập dữ liệu, giúp
người quản trị bảo mật CSDL
2> Tạo View
Create view Ten_view
As
Câu lệnh Select
Cấu trúc câu lệnh Select
2>Cấu trúc câu lệnh Select
Select[Ten_Bang.]Ten_Cot[,…]
From Ten_Bang1 <Liên kết > Ten_Bang2
Where <Điều kiện>
Group by <các cột gom nhóm>
HaVing <Điều kiện lọc nhóm>
Order by [Ten_Bang.]Ten_cot [asc/desc,…]
Compute Hàm thống kê [By Ten_cot]
Cấu trúc câu lệnh Select
Mệnh đề Select :chứa các cột,các hàm muốn hiển thị
Nếu cột tồn tại trong hai bảng trong mệnh đề From ta phải ghi
rõ :Tên_Bảng.Tên_Cột
Nếu lấy tất cả các cột trong bảng : Ten_Bang.*
Trong mệnh đề Select ta có thể dùng cấu trúc lệnh
Case
When điều kiện 1 Then Giá trị 1
When Điều kiện 2 then Giá trị 2
…
Else
Giá tri n
End
Để hiển thị dữ liệu
Cấu trúc câu lệnh Select
Mệnh đề from : cho biết dữ liệu trên câu truy vấn được lấy từ
các bảng nào
nếu dữ liệu lấy từ nhiều bảng thì các bảng này phải có quan hệ
với nhau:
Cấu trúc câu lệnh Select
Inner
Bảng 1 Left Join Bảng 2 on Bảng 1.tên cột= bảng 2.tên cột
Right
full
Nếu hai bảng liên kết với nhau qua mệnh đề inner join -> kết quả trả về là
những dòng của hai bảng có giá trị bằng nhau tại cột liên kết
Nếu hai bảng liên kết với nhau qua mệnh đề Left join(Right join) -> kết
quả trả về là những dòng của hai bảng có giá trị bằng nhau tại cột liên kết
và trả về những dòng của bảng bên trái( bên phải) có dữ liệu không bằng
dữ liệu của cột liên kết trong bảng kia
Nếu hai bảng liên kết với nhau qua mệnh đề Full join -> kết quả trả về là
những dòng của hai bảng có giá trị bằng nhau tại cột liên kết và các dòng
dữ liệu của cả hai bảng không bằng nhau tại cột liên kết
Cấu trúc câu lệnh Select
:thống kê theo cột,dữ liệu phải được sắp xếp theo cột
này
Chú ý: Trong View không có mệnh đề này
Cấu trúc câu lệnh Select
Các toán tử dùng trên mệnh đề Select
Cú pháp : Select Toán tử …
Với các toán tử :
Values(Gia_Tri1,…)
với giá trị :
kiểu chuỗi : nằm trong hai dấu ‘’ ví dụ ‘Trần thanh nhật’
Kiểu Ngày : ‘yyyy-mm-dd’ ví dụ :’1982-02-29’
Thêm nhiều dòng
Select Ten_bang_nguon.ten_cot,giatri,bieuthuc…
from …
Cấu trúc câu lệnh UpDate
UpDate : dùng cập nhật dữ liệu của một bảng
Dữ liệu Update chỉ trên một Bảng :
Cú pháp :
UpDate Ten_Bang
Set Ten_Cot= Giá trị/Biểu thức
[Where Điều kiện]
Dữ liệu Update trên nhiều Bảng :
Cú pháp :
UpDate Ten_Bang
Set Ten_Cot= Giá trị/Biểu thức
From …
[Where Điều kiện]
Chú ý : giá trị cập nhật không được dùng hàm
thống kê
Cấu trúc câu lệnh UpDate
UpDate : dùng cập nhật dữ liệu của một bảng
Dữ liệu Update chỉ trên một Bảng :
Cú pháp :
UpDate Ten_Bang
Set Ten_Cot= Giá trị/Biểu thức
[Where Điều kiện]
Dữ liệu Update trên nhiều Bảng :
Cú pháp :
UpDate Ten_Bang
Set Ten_Cot= Giá trị/Biểu thức
From …
[Where Điều kiện]
Chú ý : dữ liệu cập nhật có thể là một giá trị thống kê
trả về từ câu truy vấn con
Có thể dùng cấu trúc Case trong lệnh cập nhật
Trong câu truy vấn update không sử dụng hàm thống
kê
Cấu trúc câu lệnh Delete
Delete : dùng xóa dữ liệu của một bảng
Dữ liệu xóa chỉ trên một Bảng :
Cú pháp :
delete Ten_Bang
[Where Điều kiện]
Dữ liệu delete trên nhiều Bảng :
Cú pháp :
delete Ten_Bang
From …
[Where Điều kiện]
Chú ý : khi xóa dữ liệu trên bảng quan hệ 1 mà dữ liệu này
đã có bên bảng quan hệ nhiều -> có lỗi
Cấu trúc câu lệnh Select .. into
Select .. into : dùng tạo một bảng có cấu trúc và dữ liệu lấy
từ các bảng có trong CSDL
Cú pháp :
Select [Ten_Bang.]tenCot [,…]
Into Ten_Bang_Moi
From ..
Câu truy vấn Con (Sub Query)
Sub Query :là câu truy vấn mà kết quả trả về là điều
kiện để so sánh,gán giá trị cho câu truy vấn khác
Đặt điểm :
Chỉ trả về 1 cột dữ liệu
Nếu trả về 1 dòng : điều kiện so sánh giữa câu truy vấn