您的位置:首页 > 数据库

MSSQLServer基础01(数据类型)

2016-01-11 19:21 239 查看
数据库设计:范式

现阶段,必须遵守满足3NF

1范式:列的原子性,即列不可再拆分

2范式:表中不能描述多个信息,不能有数据冗余

3范式:引用其它表的主键信息

数据类型的意义:

1>提高效率。(减少空间,提高访问效率,‘1234567’如果用字符串存储占7个字节,如果用整型则占4个字节。);

2>能对数据进行正确的计算1+1,如果是整型则为2,如果为字符串则为11.

分类
备注和说明
类型
说明

二进制数据类型 存储非子符和文本的数据
image (varbinary(max))可用来存储图像

=======================================================================================

char [ ( n ) ]

固定长度,非 Unicode 字符数据,长度为 n 个字节。n 的取值范围为 1 至 8,000,存储大小是 n 个字节。char 的 ISO 同义词为 character。

varchar [ ( n | max ) ]

可变长度,非 Unicode 字符数据。n 的取值范围为 1 至 8,000。max 指示最大存储大小是 2^31-1 个字节。存储大小是输入数据的实际长度加 2 个字节。所输入数据的长度可以为 0 个字符。varchar 的 ISO 同义词为 char varying 或 character varying。

nchar [ ( n ) ]

n 个字符的固定长度的 Unicode 字符数据。n 值必须在 1 到 4,000 之间(含)。存储大小为两倍 n 字节。nchar 的 ISO 同义词为 national char 和 national character。

nvarchar [ ( n | max ) ]

可变长度 Unicode 字符数据。n 值在 1 到 4,000 之间(含)。max 指示最大存储大小为 2^31-1 字节。存储大小是所输入字符个数的两倍 + 2 个字节。所输入数据的长度可以为 0 个字符。nvarchar 的 ISO 同义词为 national char varying 和 national character varying。

==================================================================================================================

日期和时间 日期和时间在单引号内输入
Datetime 日期和时间

数字数据 该数据仅包含数字,包括正数、负数以及分数

int

smallint 整数

float

real 近似值数字

=======================================================================================

货币数据类型 用于十进制货币值,money 和 smallmoney 数据类型精确到它们所代表的货币单位的万分之一。

Money

Bit数据类型 表示是/否的数据
Bit 存储布尔数据类型

区分

char与nchar

varchar(10)与nvarchar(10)

varchar(max)与nvarchar(max)

text与ntext

带var和不带var的区别:varchar是可变长度的,char是不可变长度的

根据内容定长度;固定内容长度,如果长度不够则在末尾加空格

建议:定长度时使用char,不定长度再用varchar,因为不定长度在取数据时需要进行计算长度

带n与不带n:带n一个字符占2个字节,不带n一个字符占1个字节,这取决于使用哪种排序规则,如果使用简体中文,则两种类型没有区别,对于pubs库是unicode的,则char就不能正常显示中文了,只有nchar才能正常显示中文

如果存储内容非常大,则使用text或ntext,不过已经过时了,在最新版本中推荐使用varchar(max)或nvarchar(max)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: