SQL之基础篇


SQL(Structured Query Language,结构化查询语言)是用户操作关系数据库的通用语言。

1. SQL功能概述

SQL之基础篇


2. 系统提供的数据类型

2.1 数值数据类型

数据类型 说明 存储空间
bit bit数据类型是整型,其值只能是0、1或空值。这种数据类型用于存储只有两种可能值的数据,如Yes 或No、True 或False 、On 或Off. (很省空间的一种数据类型,如果能够满足需求应该尽量多用。) 1字节
tinyint tinyint 数据类型能存储从0到255 之间的整数。它在你只打算存储有限数目的数值时很有用。 1字节
smallint smallint 数据类型可以存储从- 2的15次幂(-32768)到2的15次幂(32767)之间的整数。这种数据类型对存储一些常限定在特定范围内的数值型数据非常有用。(如果tinyint类型太单调不能满足您的需求,您可以考虑用smallint类型,因为这个类型相对也是比较安全的,不接受恶意脚本内容的嵌入。) 2字节
int int 数据类型可以存储从- 2的31次幂(-2147483648)到2的31次幂 (2147483 647)之间的整数。存储到数据库的几乎所有数值型的数据都可以用这种数据类型 4个字节
numeric(p,s) 或 decimal(p,s) 数据类型能用来存储从-10的38次幂-1到10的38次幂-1的固定精度和范围的数值型数据。使用这种数据类型时,必须指定范围和精度。 范围是小数点左右所能存储的数字的总位数。精度是小数点右边存储的数字的位数 最多17个字节

2.2 普通编码字符串类型

数据类型 说明 存储空间
char(n) char数据类型用来存储指定长度的定长非统一编码型的数据,n表示字符串的最大长度,取值范围为1~8000 (若实际字符串控件小于n,系统自动在后面补空格) n字节_______
varchar(n) 可变长度的字符串类型,n表示字符串的最大长度,取值范围为1~8000。 字符数+2字节额外开销
text text 数据类型用来存储大量的非统一编码型字符数据。这种数据类型最多可以有231-1或20亿个字符. 每个字符一个字节

char 和 varchar的区别: 
若某列数据类型为varchar(20),存字符串”Jone”时,只占用4个字节,而char(20)会在为填满的空间中填写空格。所以, varchar类型比char类型更节省空间,但它的开销会大一些,处理速度也慢一些。因此,n值比较小(小于4),用char类型更好些。


2.3 统一编码字符串类型(Unicode)

数据类型 说明 存储空间
nchar(n) nchar 数据类型用来存储定长统一编码字符型数据。统一编码用双字节结构来存储每个字符,而不是用单字节(普通文本中的情况)。它允许大量的扩展字符。此数据类型能存储4000种字符,使用的字节空间上增加了一倍. 2n字节_______
nvarchar(n) nvarchar 数据类型用作变长的统一编码字符型数据。此数据类型能存储4000种字符,使用的字节空间增加了一倍. 字符数+2字节额外开销
ntext 最多可存储2的30次方-1将近10亿个字符 每个字符两个字节