SQL Server: Kiểu dữ liệu hệ thống

Các khóa học qua video:
Python SQL Server PHP C# Lập trình C Java HTML5-CSS3-JavaScript
Học trên YouTube <76K/tháng. Đăng ký Hội viên
Viết nhanh hơn - Học tốt hơn
Giải phóng thời gian, khai phóng năng lực

Kiểu dữ liệu dùng để định nghĩa loại giá trị có thể lưu trữ cho một cột nào đó của bảng.

Dưới đây là danh sách các kiểu dữ liệu hệ thống (được xây dựng sẵn) phổ biến:

Mục

Kiểu dữ liệu

Mô tả

Số chính xác

int

Một cột được khai báo kiểu dữ liệu này sẽ sử dụng 4 byte trong bộ nhớ máy tính. Nó thường được sử dụng để lưu trữ giá trị số nguyên.

smallint

Một cột được khai báo kiểu dữ liệu này sẽ sử dụng 2 byte trong bộ nhớ máy tính. Nó có thể lưu trữ các số nguyên từ -32768 đến 32767.

tinyint

Một cột của kiểu này chiếm 1 byte trong bộ nhớ. Có giá trị từ 0 đến 255

bigint  

Một cột được khai báo kiểu dữ liệu này sẽ sử dụng 8 byte trong bộ nhớ máy tính. Nó có thể lưu trữ các số nguyên từ -2^63 (-9.223.372.036.854.775.808) đến 2^63-1

numeric

Một cột được khai báo kiểu dữ liệu này sẽ có độ chính xác cao và có thể co dãn kích thước lưu trữ trong bộ nhớ.

money

Một cột được khai báo kiểu dữ liệu này sẽ sử dụng 8 byte trong bộ nhớ máy tính. Biểu diễn giá trị dữ liệu tiền tệ từ (-2^63/10000) đến (2^63-1).

 

Mục

Kiểu dữ liệu

Mô tả

Số xấp xỉ (Approximate)

float

Một cột được khai báo kiểu dữ liệu này sẽ sử dụng 8 byte trong bộ nhớ máy tính. Biễu diễn các số chấm động từ -1.79E+308 đến 1.79E+308.

real

Một cột được khai báo kiểu dữ liệu này sẽ sử dụng 4 byte trong bộ nhớ máy tính. Biễu diễn các số chấm động có độ chính xác từ -3.4E+38 đến 3.40E+38.


Date and time

datetime

Biễu diễn ngày và giờ. Được lưu trữ như là 2 số integer, chiếm 8 byte.

smalldatetime

Biễu diễn ngày và giờ. Được lưu trữ như là 2 số integer, chiếm 4 byte.

date

Chỉ biễu diễn ngày.

 

Mục

Kiểu dữ liệu

Mô tả

Chuỗi ký tự không dấu

char(n)

Lưu trữ dữ liệu ký tự với kích thước cố định và không hỗ trợ Unicode (không lưu được dữ liệu có dấu). Để dễ hình dung hơn có kiểu dữ liệu này, ta ví dụ như n=20, tức là char(20) và điều này có nghĩa là cột của bảng có kiểu này có thể lưu trữ được những chuỗi không dấu lên đến tối đa 20 ký tự. Nếu ta có một chuỗi là 'SQL Server 2014', chuỗi này gồm 15 ký tự, khi đó vì còn thừa 5 ký tự (20-15=5) nên hệ thống sẽ tự động thêm vào sau chuỗi tương ứng năm dấu cách cho đủ 20. Điều này có nghĩa rằng dữ liệu lưu trữ trong cột có kiểu char(20) sẽ luôn luôn có kích thước là 20.

varchar(n)

Cũng lưu trữ dữ liệu ký tự nhưng với kích thước thay đổi theo thực tế của dữ liệu và kích thước tối đa là n ký tự và không hỗ trợ Unicode.

text

Lưu trữ dữ liệu ký tự, độ dài có thể thay đổi và không hỗ trợ Unicode. Nó thường được dùng để lưu trữ văn bản có kích thước lớn, như mô tả sản phẩm chẳng hạn.

Chuỗi ký tự có dấu (unicode)

nchar(n)

Lưu trữ dữ liệu kí tự, nó được cố định kích thước và có hỗ trợ Unicode.

nvarchar(n)

Lưu trữ dữ liệu kí tự, độ dài có thể thay đổi và có hỗ trợ Unicode.

ntext Lưu trữ dữ liệu ký tự, độ dài có thể thay đổi và hỗ trợ chữ có dấu (Unicode). Nó thường được dùng để lưu trữ văn bản có kích thước lớn, như mô tả sản phẩm chẳng hạn.

 

Mục

Kiểu dữ liệu

Mô tả

Một số kiểu dữ liệu khác

timestamp

Một cột được khai báo kiểu dữ liệu này sẽ sử dụng 8 byte trong bộ nhớ máy tính. Nó chứa các số binary tự động phát sinh (mỗi hàng là một số duy nhất).

binary(n)

Lưu trữ dữ liệu binary có độ đài cố định với độ dài tối đa là 8000byte.

varbinary(n)

Lưu trữ dữ liệu binary có độ đài thay đổi với độ dài tối đa là 8000byte. .

image

 Lưu trữ dữ liệu binary có độ đài thay đổi với độ dài tối đa là (2^30-1) byte.

uniqueidentifier

Một cột được khai báo kiểu dữ liệu này sẽ sử dụng 16 byte trong bộ nhớ máy tính. Ngoài ra nó lưu trữ một GUID (Globally Unique Identifier). Cấu trúc của mã GUID có dạng theo hệ 16: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, ví dụ: 72A07EF0-6BB8-4AEF-B2FF-6C5C7D3439D8. Bạn có thể dùng hàm NEWID() để tạo giá trị này một cách tự động.

» Tiếp: Kiểu dữ liệu tự tạo
« Trước: Quy tắc đặt tên
Các khóa học qua video:
Python SQL Server PHP C# Lập trình C Java HTML5-CSS3-JavaScript
Học trên YouTube <76K/tháng. Đăng ký Hội viên
Viết nhanh hơn - Học tốt hơn
Giải phóng thời gian, khai phóng năng lực
Copied !!!