介绍
MSSQL是一种基于关系模型的数据库管理系统,应用广泛,其具有多样性的基本数据类型是其最大的亮点。
数据类型分类
1.数字数据类型
数字数据类型包括整型(int, bigint, smallint, tinyint)以及浮点型(float, real, decimal, numeric)。以下是数字数据详细介绍:
--创建一个数字类型的表
CREATE TABLE numbers(
int_num INT,
real_num REAL,
dec_num DECIMAL(5, 2)
)
其中,整型int的范围为-2^31(约-20亿)~2^31-1(约20亿),bigint的范围为-2^63(约-9亿亿)~ 2^63-1(约9亿亿),smallint的范围为-2^15(约-3万)~2^15-1(约3万),tinyint的范围为0~255。
浮点类型包含decimal和numeric,二者的区别在于decimal的位数定下来之后不能再进行更改,而numeric可以。
2.字符数据类型
文字数据类型包括定长(char)和变长(varchar)字符类型,以及文本类型(text, ntext)。
--创建一个字符类型的表
CREATE TABLE characters(
first_name CHAR(20),
last_name VARCHAR(20),
comment TEXT
)
其中,char和varchar都是在字符后添加长度进行定义,但是char的长度固定,如果字符长度不足,会往后自动填充空格,而varchar可以不用完全填满所规定的长度,但是长度不能超过所定义的范围。
TEXT类型用于存储较长的文本信息,最大容量可以超过4000个字符,可以用于 存储大型数据,可以采用文本和二进制格式。
3.日期和时间类型
日期和时间类型包括日期(date)和时间(time, datetime, datetime2)。
--创建一个日期和时间类型的表
CREATE TABLE dates(
birth_date DATE,
login_time TIME,
last_login DATETIME,
updated_time DATETIME2(7)
)
其中,date表示日期,time表示时间,datetime也可以存储日期和时间,datetime2可以支持更大的精度。
4.二进制和大对象类型
二进制和大对象类型包括二进制类型(binary, varbinary)和大对象类型(image, xml, cursor, table)。
--创建一个二进制和大对象类型的表
CREATE TABLE binaries(
binary_data VARBINARY(MAX),
image_data IMAGE,
xml_data XML
)
其中,binary可以存储定长的二进制数据,varbinary可以存储变长的二进制数据。image可以存储较大的二进制文件,xml可以存储具有可扩展标记语言(XML)格式的数据,CURSOR用于操作SQL Server游标, TABLE用于存储将来需要在存储中进行存储的结果集。
总结
以上就是MSSQL数据库的基本数据类型,不同类型的性质和取值范围不同,需要在实际应用中谨慎选择。