[关键字]用[ ]包起来
SQLserver数据类型:
非unicode编码:
在计算机世界,每一个字符都有编码的东西
unicode码的特点:
用两个字节表示一个字符(可以是英文字符,汉字)。
big5支持繁体;
iso-8859-1编码:支持欧洲文字编码;
gb2312支持中文汉字;
gbk可以支持更多的汉字;
邮件服务器,国际性的软件会涉及多种编码的问题,
不同国家的文字,是否支持文字;
char最大值能存8000个字符,能存4000个汉字;
非unicode编码,用两个字节 表示一个汉字;
char定长,会补全;
char(100) 表中aa后面会有98个空格;
varchar 变长;
varchcar中数据库会自动回收剩下的空间;
为什么还要char?
在这样情况下应当使用到char:
假设要设计一个数据库 ,这个数据库有一个字段是
学号,6位,定长;
定长应该毫不犹豫的选用char,
因为char的查询速度很快,varchar数据库中需要一个个匹配,
查询速度和效率比较慢;
SQLserver帮助文档:
字符超过了8000个,可以考虑用text或者ntext;
尽可能使用Unicode编码,ntext;
Unicode / 非Unicode 编码
Unicode编码的速度会更快;
nchar /nvarchar 和前面的最大区别是Unicode编码;
Unicode编码无论是单个字母还是 汉字都占两个字节;
不确定大小,不超过4000字符,
有可能有汉字:nchar;
能用nchar就不用char;
bit: 0-1
慎用bit
------------------------------
表的管理--表名和列的命名规则
1、必需以字母,_开头
2、长度不能超过128个字符
3、不要使用sql server的保留字
4、只能使用如下字符A-Z,a-z,0-9,$,#,_等
表的管理--支持的数据类型
字符型
char 定长 最大8000字符(非unicode编码)
char(10)‘小韩‘前四个字符放‘小韩‘,后添6个空格补全
varchar变长 最大8000字符(非unicode编码)
varchar(10)‘小寒‘sql
server分配四个字符,这样可以节省空间
ntext可变长度Unicode数据的最大长度为2的30次方-1(1,073,741,823)个字符
text可变长度非Unicode数据的最大长度为2的31次方-1(2,147,483,647)个字符
区别:
1、text是字节格式存储英文的,也可以存中文但有时候会显示成乱码
2、ntext是多字节格式存储unicode的,也就是存储各种文字用的。
在什么时候使用char型而不使用varchar,在知道字段定长固定时就使用char
字符型
nchar 定长 最大4000字符(unicode编码)
nchar(10)‘小韩‘前四个字符放‘小韩‘,后添6个空格补全
nvarchar 变长 最大4000字符(unicode编码)
nvarchar(10)‘小寒‘sql
server分配四个字符,这样可以节省空间
特别说明:
1、一般带有汉字的字段用nvarchar,全英文或符号的用varchar,因为nvarchar为unicode字符集,该类型的字段无论是单个字母还是单个汉字都占两个字节,而varchar,字母占一个字节,汉字占两个,nvarchar处理汉字或其它unicode字符集的速度要比varchar字段快。
2、如果有一些特殊字符在nvarchar中没有的,如日文的某些名片,那当然只能选合适的代码页用varchar了,而且这些特有语言特有的字符转换到nvarchar会消失
表的管理--支持的数据类型
数字型
1、bit
范围 0到1
2、int
范围 负的2的31次方到正的 2的31次方-1
3、bigint
范围 负的2的63次方到正的 2的63次方-1
4、float
存放小数,不推荐使用
5、numeric
小数
强烈建议 如果要去存放小数最好使用numeric
原文地址:https://www.cnblogs.com/xuxaut-558/p/10035710.html