T Sql 简明教程

T-SQL - Data Types

SQL Server 数据类型是一种属性,它指定了任何对象的 data 类型。每列,变量和表达式在 SQL Server 中有相关的 data 类型。在创建表时可使用这些数据类型。你可针对你的需求为表格栏选择特定的数据类型。

SQL Server 提供了七个类别包括其他类别的 data 类型以供使用。

Exact Numeric Types

Type

From

To

bigint

-9,223,372,036,854,775,808

9,223,372,036,854,775,807

int

-2,147,483,648

2,147,483,647

smallint

-32,768

32,767

tinyint

0

255

bit

0

1

decimal

-10^38 +1

10^38 –1

numeric

-10^38 +1

10^38 –1

money

-922,337,203,685,477.5808

+922,337,203,685,477.5807

smallmoney

-214,748.3648

+214,748.3647

数字和十进制是固定精度和刻度 data 类型,以及在功能上是相等的。

Approximate Numeric Types

Type

From

To

Float

-1.79E + 308

1.79E + 308

Real

-3.40E + 38

3.40E + 38

Date and Time Types

Type

From

To

datetime(3.33 milliseconds accuracy)

Jan 1, 1753

Dec 31, 9999

smalldatetime(1 minute accuracy)

Jan 1, 1900

Jun 6, 2079

date (1 天精度。在 SQL Server 2008 中引入)

Jan 1, 0001

Dec 31, 9999

datetimeoffset (100 纳秒精度。在 SQL Server 2008 中引入)

Jan 1, 0001

Dec 31, 9999

datetime2 (100 纳秒精度。在 SQL Server 2008 中引入)

Jan 1, 0001

Dec 31, 9999

time (100 纳秒精度。在 SQL Server 2008 中引入)

00:00:00.0000000

23:59:59.9999999

Character Strings

Sr.No

Type & Description

1

char 固定长度非 Unicode 字符数据,最大长度为 8000 字符。

2

varchar 可变长度非 Unicode 数据,最大长度为 8000 字符。

3

Varchar (max) 可变长度非 Unicode 数据,最大长度为 231 个字符(在 SQL Server 2005 中引入)。

4

text 可变长度非 Unicode 数据,最大长度为 2,147,483,647 个字符

Unicode Character Strings

Sr.No

Type & Description

1

nchar 固定长度 Unicode 数据,最大长度为 4000 字符。

2

nvarchar 可变长度 Unicode 数据,最大长度为 4000 字符。

3

Nvarchar (max) 可变长度 Unicode 数据,最大长度为 230 个字符(在 SQL Server 2005 中引入)。

4

ntext 可变长度 Unicode 数据,最大长度为 1,073,741,823 个字符。

Binary Strings

Sr.No

Type & Description

1

binary 固定长度二进制数据,最大长度为 8000 字节。

2

varbinary Variable-length binary data with a maximum length of 8,000 bytes.

3

varbinary(max) Variable-length binary data with a maximum length of 231 bytes (Introduced in SQL Server 2005).

4

image Variable-length binary data with a maximum length of 2,147,483,647 bytes.

Other Data Types

  1. sql_variant − Stores values of various SQL Server-supported data types, except text, ntext, and timestamp.

  2. timestamp − Stores a database-wide unique number that gets updated every time a row gets updated.

  3. uniqueidentifier − Stores a globally unique identifier (GUID).

  4. xml − Stores XML data. You can store XML instances in a column or a variable (Introduced in SQL Server 2005).

  5. cursor − A reference to a cursor.

  6. table − Stores a result set for later processing.

  7. hierarchyid − A variable length, system data type used to represent position in a hierarchy (Introduced in SQL Server 2008).