You are on page 1of 16

Thực hành quản lý thông tin LAB 3

Lâm Trường Sơn - 19522133


Bài 6:
A. Tổ chức dữ liệụ
* Kiểu dữ liệu chuỗi:
Cú pháp Kích thước tối đa Giải thích

CHAR(SIZE) Tối đa 8000 kí tự


Độ dài cố định, thêm dấu
cách về bên phải để bù
phần trống cho đủ số kí tự.
Không chứa kí tự
Unicode
VARCHAR(SIZE) hoặc Tối đa 8000 kí tự hoặc kich_thuoc là số kí tự lưu
VARCHAR(MAX) theo số tối đa trữ.
Độ dài tùy biến.
Nếu chỉ định là toi_da thì
tối đa là 2GB.
Không chứa kí tự
Unicode.
TEXT Tối đa 2GB Độ dài tùy biến.
Không chứa kí tự
Unicode.
NCHAR(SIZE) Tối đa 4000 kí tự Độ dài cố định.
Kí tự Unicode.
NVARCHAR(size) hoặc Tối đa 4000 kí tự hoặc kich_thuoc là số kí tự lưu
NVARCHAR(max) theo số tối đa. trữ.
Độ dài tùy biến.
Nếu số toi_da được chi
định thì số kí tự tối đa là
2GB.
Kí tự Unicode
NTEXT Tối đa 1.073.741.823 Độ dài tùy biến.
byte. Kí tự Unicode.
BINARY(SIZE) Tối đa 8000 kí tự. kich_thuoc là số kí tự lưu
trữ.
Độ dài cố định.
Thêm dấu cách để bù
phần trống cho đủ số kí tự.
Dữ liệu nhị phân.

VARBINARY(SIZE) Tối đa 8000 kí tự hoặc kich_thuoc là số kí tự lưu


hoặc theo số tối đa. trữ.
VARBINARY(MAX) Độ dài tùy biến.
Nếu chỉ định là toi_da thì
tối đa là 2GB.
Dữ liệu nhị phân.

IMAGE kích thước tối đa là 2GB. Độ dài tùy biến.


Dữ liệu nhị phân.

- Kiểu dữ liệu dạng số:

Cú pháp kiểu dữ
Kích thước tối đa Giải thích
liệu
BIT số nguyên 0, 1 hoặc NULL
TINYINT từ 0 đến 255
SMALLINT từ -32768 đến 32767
-2,147,483,648 đến
INT
2,147,483,647
từ -
9,223,372,036,854,775,808
BIGINT
đến
9,223,372,036,854,775,807
• m mặc định là 18 nếu m là tổng số
không được chỉ định cụ lượng các số
thể. còn d là số
DECIMAL(m,d)
• d mặc định là 0 nếu lượng các số
không được chỉ định cụ nằm sau dấu
thể. phẩy.
m là tổng số
lượng các số
• m mặc định là 18 nếu còn d là số
không được chỉ định cụ lượng các số
thể. nằm sau dấu
DEC(m,d)
• d mặc định là 0 nếu phẩy.
không được chỉ định cụ Đồng nghĩa
thể. với kiểu dữ
liệu
DECIMAL.

m là tổng số
lượng các số
• m mặc định là 18 nếu còn d là số
không được chỉ định cụ lượng các số
thể. nằm sau dấu
NUMERIC(m,d)
• d mặc định là 0 nếu phẩy.
không được chỉ định cụ Đồng nghĩa
thể. với kiểu dữ
liệu
DECIMAL.

n là số lượng
số dấu phẩy động n mặc định của số bit lưu
FLOAT(n) là 53 nếu không được chỉ trữ trong một
định cụ thể. kí hiệu hóa
học.
tương đương với
REAL
FLOAT(24)
từ - 214,748.3648 đến
SMALLMONEY
214,748.3647
từ -
922,337,203,685,477.5808
MONEY
đến
922,337,203,685,477.5807
- Kiểu dữ liệu ngày tháng/ thời gian:
Cú pháp kiểu dữ liệu Kích thước tối đa Giải thích
giá trị từ '0001-01-01' hiển thị dưới dạng
DATE
đến '9999-12-31. ‘YYYY-MM-DD’
• Ngày lấy từ '1753-
01-01 00:00:00' to
'9999-12-31 hiển thị dưới dạng
DATETIME 23:59:59'. ‘YYYY-MM-DD
• Giờ lấy từ hh:mm:ss[.mmm]
'00:00:00' to
'23:59:59:997'
• giá trị lấy từ '0001-
01-01' đến '9999- hiển thị dưới dạng
DATETIME2(chính
12-31'. 'YYYY-MM-DD
xác tới số thập phân
• Thời gian lấy từ hh:mm:ss[.số giây
của giây)
'00:00:00' đến thập phân]'
'23:59:59:9999999'.
• giá trị lấy từ '1900-
01-01' đến '2079-
hiển thị dưới dạng
06-06'.
SMALLDATETIME 'YYYY-MM-DD
• Thời gian lấy từ
hh:mm:ss
'00:00:00' đến
'23:59:59'.
• giá trị lấy từ
'00:00:00.0000000'
đến hiển thị dưới dạng
TIME '23:59:59.9999999'. 'YYYY-MM-DD
• Ngày lấy từ '0001- hh:mm:ss[.nnnnnnn]'
01-01' đến '9999-
12-31'.
• giá trị thời gian lấy
hiển thị dưới dạng
DATETIMEOFFSET từ '00:00:00' đến
YYYY-MM-DD
(chính xác tới số thập '23:59:59:9999999'.
hh:mm:ss[.nnnnnnn]'
phân của giây) • Múi giờ lấy từ -
[{+|-}hh:mm]
14:00 đến +14:00.
6.2
- dung lượng tối đa của 1 row là khóa chính: 900 bytes
- dung lượng tối đa của 1 row là khóa ngoại: 900 bytes
- dung lượng tối đa của 1 row trong table: 8060 bytes
6.3 Dung lượng (KB) tối đa của 1 table mà SQL Server cho phép: tùy thuộc vào bộ
nhớ
6.4 Tìm hiểu ý nghĩa các table hệ thống (System tables) trong CSDL Master như:
Sysusers; Syssserver; Sysxlogin
- Sysusers: Chứa một hàng cho mỗi người dùng Microsoft Windows, nhóm
Windows, người dùng Microsoft SQL Server hoặc vai trò SQL Server trong cơ sở
dữ liệu.
- Sysserver: Chứa một hàng cho mỗi máy chủ mà một phiên bản của SQL Server có
thể truy cập dưới dạng nguồn dữ liệu OLE DB.
- Sysxlogin: Chứa một hàng cho mỗi tài khoản đăng nhập.
6.5 Khi người dùng tạo 1 CSDL, SQL Server yêu cầu tạo ra tối thiểu bao nhiêu file?
Ý nghĩa mỗi file?
- Tối thiểu, mọi cơ sở dữ liệu SQL Server có hai tệp hệ điều hành: tệp dữ liệu (data
file) và tệp nhật ký (log file).
- Ý nghĩa:
+ tệp dữ liệu (data file): chứa dữ liệu và các đối tượng như table, indexes, stored
procedures và views
+ Các tệp nhật ký (log file) chứa thông tin được yêu cầu để khôi phục tất cả các thay
đổi trong cơ sở dữ liệu.
C. An toàn dữ liệu
6.8 Các tính năng nào dùng để đảm bảo tính an ninh mà SQL Server hỗ trợ
⁃ Login and user: SQL Server chỉ cho phép bạn truy cập vào hệ thống thông qua
login. Chỉ khi bạn có quyền hạn ở mức độ nhất định thì bạn mới có thể tạo thêm
những login khác.
⁃ Server role: là một tập hợp nhóm những quyền được đại diện bằng một tên để có
thể thuận tiện trong việc quản lí.
⁃ Database role: là database tập hợp những quyền truy cập vào cơ sở dữ liệu thành
từng nhóm để có thể dễ tạo và sửa đổi.
⁃ Authentication: SQL Server xác thực những đăng nhập với 2 cơ chế, đó là SQL
Server authencation và Window authencation.
6.9 Tìm hiều cách tạo ra các user, role.
- User login:
+ Sử dụng SQL Server Management Studio, chọn dấu + để mở rộng tùy chọn
Security và chuột phải vào logins.
+ Chọn New Login
+ Điền các thông tin đầy đủ các thông tin trong tab Seneral.
+ Sau đó và tab Server Rols để chọn các đặc quyền cho tài khoản SQL Server.
+ Tiếp đến là tab User Mapping để chọn các DataBase mà tài khoản có thể kết nối
tới, Schema bên trong Database. Sau đó chọn các đặc quyền (Role) đối với Database.
+ Chọn OK để hoàn thành.
- Server Roles:
+ Khi tạo tài khoản, chúng ta sẽ có một tab Server Roles để chọn các đặc quyền trên
SQL Server.
6.10 Cách phân quyền trên các user, role này như thế nào? Có thể phần quyền
thành những gì?
- Phân quyền User: dùng T-SQL
Cú pháp:
use <database name>
Grant <permission name> on <object name> to <username\principle>
Có thể tạo xóa hoặc từ chối quyền trong MS SQL Server.
6.11 Số user có thể connect cung một thời điểm là bao nhiêu?
- Không giới hạn số user có thể connect cùng một thời điểm. tuy nhiên ta có thể
chỉnh số lượng này.
6.12 Tạo ra một View, chứng minh các View cũng là con đường tạo an ninh cho
CSDL.
View là một bảng ảo trong cơ sở dữ liệu có nội dung được định nghĩa thông qua câu
lệnh SQL nào đó.
6.13 Hãy backup CSDL AAA thành 1 file AAA.BAK, sau đó xóa CSDL AAA
và khôi phục AAA nhờ vào AAA.BAK.
- Backup CSDL QL_DETAI thành file CSDL_QL_DETAI_BK.bak.

- Xóa CSDL QL_DETAI


- Restore CSDL QL_DETAI bằng file CSDL_QL_DETAI_BK.bak
Bài 8.
8.1.
- Chọn 1 file dữ liệu (SV) từ excel, và import vào SQLServer
- Tạo database mới chưa có dữ liệu
- Chọn 1 table trong SQL Server, và export tới file Excel.
8.2.
Bài 9.

You might also like