Các kiểu dữ liệu trong MS SQL Server 2014. (Data types in MS SQL Server 2014.)

Kiểu dữ liệu (Data Types) trong SQL dùng để định nghĩa một kiểu giá trị mà một cột trong bảng (column in table) có thể chứa. Trong một bảng, mỗi cột cần có một tên và một kiểu dữ liệu, bài viết này xin cung cấp các kiểu dữ liệu (data types) mà phiên bản Microsoft SQL 2014 có hỗ trợ.

Các kiểu dữ liệu trong MS SQL Server 2014. (Data types in MS SQL Server 2014.)

Hiện các kiểu dữ liệu này được chia thành 7 loại chính bên dưới và tùy theo mục đích bạn có thể lựa chọn kiểu dữ liệu phù hợp cho cột dữ liệu của mình.

Exact numberics (số chính xác, không sai số):
  • Bigint: khoảng giá trị từ -263 đến 263 -1 tức từ -9.223.372.036.854.775.808 đến 9.223.372.036.854.775,807.
  • Int: khoảng giá trị từ -231 đến 231 -1 tức từ -2.147.483.648 đến 2.147.483.647.
  • Smallint: khoảng giá trị từ -215 đến 215 tức từ -32.768 đến 32.767.
  • Tinyint: khoảng giá trị từ 0 đến 255.
  • Bit: chứa giá trị 0 hoặc 1.
  • Decimal: có giá t rị từ -1038 +1 đến 1038 -1.
  • Numeric: có giá t rị từ -1038 +1 đến 1038 -1.
  • Money: khoảng giá trị từ -263 đến 263 tức từ -922.337.203.685.477,5808 922.337.203.685.477,5807.
  • Smallmoney: khoảng giá trị từ -214.748,3648 đến 214.748,3647

Approximate Numerics (số gần đúng)
  • Float: độ chính xác từ 1.79E + 308 đến 1.79E + 308.
  • Real: độ chính xác từ -3.40E + 38 đến 3.40E + 38.

Date and Time
  • datetime: khoảng giá trị ngày từ 01/01/1753 đến 31/12/9999, với time là 00:00:00 tới 23:59:59.997.
  • datetime2: khoảng giá trị ngày t 01/01/0001 đến 31/12/9999, với time là 00:00:00 through 23:59:59.9999999
  • smalldatetime: khoảng giá trị từ 01/01/1900 đến 06/06/2079.
  • date: khoảng giá trị ngày t 01/01/0001 đến 31/12/9999.
  • time: từ khoảng 00:00:00.0000000 đến 23:59:59.9999999 
  •  datetimeoffset: khoảng giá trị ngày t 01/01/0001 đến 31/12/9999, với time là 00:00:00 through 23:59:59.9999999
*Lưu ý: nhìn giá trị thì có vẻ giống nhau nhưng chúng thực sự khác nhau, khi nào rãnh mình viết viết một bài chi tiết về các kiểu dữ liệu này và sự khác biệt giữa chúng.

Character Strings (kiểu chuỗi):
  • Char: không chứa Unicode, chiều dài tối đa là 8.000 ký tự.
  • Varchar: không chứa Unicode, chiều dài tối đa là 8.000 ký tự.
  • Text: không chứa Unicode, chiều dài tối đa là 231 -1 tương đương với 2.147.483.647 ký tự

Unicode Character Strings (kiểu chuỗi có chứa Unicode):
  • nchar: có chứa Unicode, chiều dài tối đa là 4.000 ký tự
  • nvarchar: có chứa Unicode, chiều dài tối đa là 4.000 ký tự
  • ntext: có chứa Unicode, chiều dài tối đa là 230 – 1 tức 1.073.741.823 ký tự.

Binary strings (chuỗi nhị phân):
  • Binary: chiều dài tối đa là 8.000 byte
  • Varbinary: chiều dài tối đa là 8.000 byte
  • Image: chiều dài tối đa là 231 -1 tương đương với 2.147.483.647 byte

Other Data Types (mộ số kiểu dữ liệu đặc biệt khác):
  • cursor: Tham chiếu tới một đối tượng con trỏ (Cursor)
  • timestamp: Lưu giữ một số duy nhất mà được cập nhật mỗi khi một hàng được cập nhật.
  • hierarchyid: lưu cấu trúc phân cấp trong cơ sở dữ liệu.
  • uniqueidentifier: Lưu giữ một định danh chung (Globally Unique Identifier - GUID).
  • sql_variant: Lưu giữ các giá trị của các kiểu dữ liệu đa dạng được hỗ trợ bởi SQL Serverv, ngoại trừ text, ntext, và timestamp.
  • xml: Lưu giữ dữ liệu XML. Bạn có thể lưu giữ xml trong một column hoặc một biến.
  • table: Lưu giữ một tập hợp kết quả để xử lý vào lần sau.
  • Spatial Types: cho phép các thực thể dữ liệu kinh độ, vĩ độ và dựa trên GPS được lưu bên trong SQL Server. Kiểu dữ liệu này thích hợp với các chuẩn công nghiệp như Open Geospatial Consortium (OGC) Simple Features cho SQL và ISO 19125 Simple Feature Access.




Writer: +Bui Ngoc Son





No comments:

Post a Comment