公共数据类型的SQL服务器比较
这是每个变量、参数、表达式的数据类型,所以在SQL Server中的数据类型提供的系统分为几大类,如表4-2所示。其中,bigint,sql_variant,和表3新增的数据类型,在SQL Server 2000中,以下分类讲述各种数据类型。
1。整数数据类型
整数数据类型是最常用的数据类型之一。
1,int(整数)
int(或整数)数据类型存储从2 - 2(- 2147483648)的31方到31的第1方幂(2147483647)的所有正整数和负整数。
每个int类型的数据存储在4个字节中,其中1表示整数值的正数和负数,其他31位表示整数值的长度和大小。
2、smallint
的smallint数据类型存储之间的15方所有正负整数(32768)的2和15平方1(32767)的15倍。
每个smallint型数据占用2个字节的存储空间,其中1位表示整数的正数和负数。其他15位表示整数值的长度和大小。
3、TINYINT
TINYINT数据类型存储的所有正整数从0到255。每个数据字段类型占用1字节的存储空间。
4、bigint
BIGINT数据类型存储所有正负整数从2 ^ 63(922337203685477580)2(922337203685477580)^ 63-1。
每个数据bigint类型占用8字节的存储空间。
两。浮点数据类型
浮点数据类型用于存储十进制十进制数。浮点值的数据存储在SQL服务器中,使用上舍入(舍入或唯一项)。
圆是指,当(且仅当)轮数是一个非零的数字部分,在低位保持在1的值,和必要的进行。如果一个数上舍入,绝对值不会减少。
例如,2和12位被舍入为3.14159265358979,结果分别为3.15和3.141592653590。
1,真实数据类型
真正的数据类型可以精确到第七位,从-3.40E 38 3.40e + 38.each实型数据占用4个字节的存储空间。
2、浮
float数据类型可以精确到第十五位,从-1.79E 308 1.79e + 308.each浮点型数据占用8个字节的存储空间。
浮点数据类型可以写成浮点形式的N。n指定浮点数据的精度。n是1到15之间的整数值。当n取1到7时,它实际上定义了一种真正的数据类型,系统用4字节存储它;
当n取8到15时,系统将其视为浮点类型,并将其存储为8字节。
3、十进制
十进制数据类型可以提供小数所需的实际存储空间,但也存在一些限制。您可以使用2到17个字节来存储该值的38倍- 1 - 10和38倍- 1的10。
它可以以十进制的形式写成,p和s决定精确的比例和数字,其中P表示可以存储的值的总数(不包括小数点),默认值是18;s表示小数点后的位数,默认值是0。
例如,十进制(155)表示总共15个数字,其中整数为10,小数为5。
4、数字
数值数据类型与十进制数据类型完全相同。
注意:SQL Server,在前端开发工具结合,最多支持28位数据精度默认。但你可以使用命令来执行sqlserver.exe程序启动SQL Server,它可以改变默认的精度。
命令语法如下所示:
sqlservr { / D master_device_path } { / P precisim_leve1 }
示例4-4:启动SQL Server的最大数据精度38
sqlservr / D C: MSSQL2000 数据 master.dat / p38
在所使用的参数中,如果没有指定具体的数值精度,则默认值为38。
三,二进制数据类型
1、二
二进制数据类型用于存储二进制数据,它被定义为二进制(n),n代表数据长度从1到8000。
在使用中,必须指定二进制类型数据的大小,至少为1字节。二进制类型数据占用n + 4字节的存储空间。
在输入数据时,您必须添加一个字符0x作为之前的数据,二进制标识如:输入ABC,你应该进入0xabc。
如果输入的数据太长,输入的多余的部分将被切断。如果在输入数字个数为奇数,0是起始符号0x后加入,如0xabc,自动改变到0x0abc由系统。
2、varbinary
的varbinary数据类型在varbinary定义形式(N),它类似于二进制类型,和N的值是1到8000,如果输入的数据太长,它会切断其过剩。
不同的是,varbinary数据类型有一个可变长度的特征,因为在varbinary数据类型的存储长度+ 4字节的实际数值长度。当二进制数据类型允许空值,它将被视为varbinary数据类型。
总的来说,因为二进制数据类型的长度是固定的,它比varbinary类型更快。
四。逻辑数据类型
位:位数据类型占用1字节的存储空间,其值为0或1。如果输入值小于0或1,则将其视为1。
位类型不能定义为空值(所谓空值是空值或无意义值)。
五,字符数据类型
字符数据类型是最常用的数据类型。它可以用来存储各种字母、数字符号和特殊符号。一般来说,在使用前后的字符类型数据中应该添加一个引号或双引号。
1字符
char数据类型是以char(n)的形式定义的,存储在char类型中的每个字符和符号占用一个字节的存储空间。n代表所有字符的存储空间,n的值为1到8000。
您可以容纳8000个ANSI字符。如果没有指定n值,系统的默认值是1。如果输入数据中的字符数小于n,则系统自动添加空间来填充设置空间。如果输入数据太长,则多余部分将被切断。
2、nchar
nchar数据类型是NCHAR {定义形式(n)},它类似于char类型。不同的是,n是1到4000的nchar数据类型的值。因为NCHAR类型采用Unicode标准字符集(字符集)。
Unicode标准指定每个字符占用两个字节的存储空间,所以它需要两倍的存储空间为非Unicode数据类型。Unicode标准的使用是好的因为两字节存储容量的单位使用,存储单元大大增加,可世界上的语言都包括在内,在数据列可以出现在同一时间,汉语、英语、法语和德语,并不会出现编码冲突。
3、varchar
varchar数据类型是在VARCHARn的形式定义)。它类似于char类型,和N的值是1到8000,如果输入的数据太长,它会切断其过剩。
不同的是,varchar数据类型的长度可变的特点,因为varchar数据类型的存储长度为实际数值长度。如果输入数据的字符数小于n,那么系统将不会在后面添加空间来填充集合空间。
在一般情况下,由于字符数据类型的长度是固定的,它比varchar类型更快。
4、nvarchar
nvarchar数据类型为nvarchar {在定义形式(n)},它类似于varchar类型。不同的是,nvarchar数据类型使用Unicode标准字符集(字符集),和N的值是1到4000。
六。文本和图形数据类型
这种类型的数据类型用于存储大量字符或二进制数据。
1、文本
文本数据类型用于存储大量文本数据。它的容量在理论上是31到1(2147483647)字节,从1到2。在实际应用中,它取决于硬盘的存储空间。
在SQL Server 2000以前的版本中,数据库中的文本对象实际上是一个指针,它指向一个数据页(数据页)基于8kb(8192字节)。
这些数据页通过逻辑动态地增加和链接。在SQL Server 2000中,文本和图像类型的数据直接存储在表的数据行中,而不是存储在不同的数据页中。
这减少了用于存储文本和IMA类型的空间,并相应地减少了对此类数据的磁盘处理的I/O数量。
2、ntext
ntext数据类型类似于文本。型。ntext类型是基于Unicode标准字符集(字符集),所以它的理论容量为230-1(1, 073,741, 823)字节。
3、图像
图像数据类型用于存储大量二进制数据二进制数据,其理论容量为2 - 31 - 1(2147483647)字节,存储数据的方式与文本数据类型相同。
它通常用于存储OLE对象链接和嵌入,对象连接和嵌入)。与二进制数据类型时,数据输入,字符0x必须添加数据之前的双重身份。
七、日期和时间数据类型
1日期时间
日期时间数据类型用于存储日期和时间的组合,它可以存储从零公元1753年1月1日23:59公元12月31日约59秒,9999。
以上是对这篇文章的完整描述,希望大家喜欢。