SQL Server浮点数据类型的详细解析

树叶云

此文章主要向大家描述的是SQL Server浮点数据类型,SQL Server数据库的浮点数据类型主要是用于十进制小数的存储。浮点数值的数据在SQL Server 中采用上舍入(Round up 或称为只入不舍)方式进行存储。所谓上舍入是指。

当(且仅当)要舍入的数是一个非零数时,对其保留数字部分的 最低有效位上的数值加1 ,并进行必要的进位。

若一个数是上舍入数,其绝对值不会减少。如:对3.14159265358979 分别进行2 位和12位舍入,结果为3.15 和3.141592653590。

 

1、REAL 数据类型

 

REAL数据类型可精确到第7 位小数,其范围为从-3.40E -38 到3.40E +38。 每个REAL类型的数据占用4 个字节的存储空间。

 

2、FLOAT

 

FLOAT 数据类型可精确到第15 位小数,其范围为从-1.79E -308 到1.79E +308。 每个FLOAT 类型的数据占用8 个字节的存储空间。 FLOAT数据类型可写为FLOAT[ n ]的形式。n 指定FLOAT 数据的精度。n 为1到15 之间的整数值。当n 取1 到7 时,实际上是定义了一个REAL 类型的数据,系统用4 个字节存储它;当n 取8 到15 时,系统认为其是FLOAT 类型,用8 个字节存储它。

 

3、DECIMAL

 

DECIMAL数据类型可以提供小数所需要的实际存储空间,但也有一定的限制,您可以用2 到17 个字节来存储从-10的38次方-1 到10的38次方-1 之间的数值。可将其写为DECIMAL[ p [s] ]的形式,p 和s 确定了精确的比例和数位。

其中p 表示可供SQL Server浮点数据类型存储的值的总位数(不包括小数点),缺省值为18; s 表示小数点后的位数,缺省值为0。 例如:decimal (15 5),表示共有15 位数,其中整数10 位,小数5。 位表4-3 列出了各精确度所需的字节数之间的关系。

 

4、NUMERIC

NUMERIC数据类型与DECIMAL数据类型完全相同。

 

注意:SQL Server 为了和前端的开发工具配合,其所支持的数据精度默认最大为28位。但可以通过使用命令来执行sqlserver.exe 程序以启动SQL Server,可改变默认精度。命令语法如下:

 

  1. SQLSERVR[/D master_device_path][/P precisim_leve1] 

例4-4: 用最大数据精度38 启动SQL Server

 

 

  1. sqlservr /d c:\ Mssql2000\data\master.dat /p38 

 

在使用了/P 参数后,如果其后没有指定具体的精度数值,则默认为38 位。

以上的相关内容就是对SQL Server浮点数据类型的介绍,望你能有所收获。

【编辑推荐】

  1. SQL Server数据库连接,Web.config的正确配置
  2. SQL Server 数据表信息的详细描述
  3. SQL Server置疑的出现的原因,现象与破解
  4. 实现SQL Server 2000全文索引迁移步骤
  5. SQL Server全文索引的实例演示

 

 

 

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/229655.html<

(0)
运维的头像运维
上一篇2025-04-18 21:08
下一篇 2025-04-18 21:09

相关推荐

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注