- 数据类型列表
- 整数类型:bigint、int、smallint、tinyint
- 准确数值类型:decimal、numeric
- 近似数值类型:float、real
- 字符类型:char、varchar、text、nchar、nvarchar、ntext
- 日期和时间类型:date、time、datetime2、datetimeoffset、smalldatetime、datetime
- 二进制类型:binary、varbinary、image
- 其他类型:cursor、sql_variant、table、xml、hierarchyid、geometry、geography、uniqueidentifier
- 详细阐明
- 整数类型
- bigint
- 范围: − 2 63 -2^{63} −263到 2 63 − 1 2^{63}-1 263−1(即 -9223372036854775808到9223372036854775807)。
- 用途:用于存储非常大的整数,比方存储大型数据库中的唯一标识符、大型统计数据等场景。
- int
- 范围: − 2 31 -2^{31} −231到 2 31 − 1 2^{31}-1 231−1(即 -2147483648到2147483647)。
- 用途:这是最常用的整数类型,用于存储普通大小的整数,如用户ID、商品数量等。
- smallint
- 范围: − 2 15 -2^{15} −215到 2 15 − 1 2^{15}-1 215−1(即 -32768到32767)。
- 用途:适合存储范围较小的整数,如年事、月份(1 - 12)等。
- tinyint
- 范围:0到255。
- 用途:通常用于存储只有少量取值大概的整数,如性别(0体现女,1体现男)、布尔值(0体现假,1体现真)等简朴的标识。
- 准确数值类型
- decimal和numeric
- 格式:decimal(p, s)和numeric(p, s),其中p是精度(数字的总位数),s是小数位数。比方,decimal(5,2)体现总共5位数字,其中2位是小数部分。
- 范围:由精度p决定,范围从 1 0 − s 10^{-s} 10−s到 1 0 p − s − 1 0 − s 10^{p - s}-10^{-s} 10p−s−10−s。
- 用途:用于必要准确存储数值的环境,特别是在财政领域,如金额、汇率等计算,能保证小数部分的精度。
- 近似数值类型
- float和real
- 范围:float可以存储从 − 1.79 E + 308 -1.79E + 308 −1.79E+308到 1.79 E + 308 1.79E + 308 1.79E+308的近似数值,real范围相对较小,从 − 3.40 E + 38 -3.40E + 38 −3.40E+38到 3.40 E + 38 3.40E + 38 3.40E+38。
- 存储格式:以科学计数法情势存储,会有一定舍入偏差。float精度可指定(如float(n),n为精度位数),real类似于float(24)精度。
- 用途:实用于科学计算和工程计算等场景,对精度要求不是绝对准确,但必要体现非常大或非常小的数值,如物理实验数据、统计分析中的概率值等。
- 字符类型
- char
- 格式:char(n),n体现字符的固定长度,范围是1到8000。
- 用途:用于存储固定长度的字符数据。假如存储的数据长度小于n,会用空格添补。比方,存储固定长度的编码,像国家地域代码(长度固定为3位)。
- varchar
- 格式:varchar(n),n体现字符的最大长度,范围是1到8000。
- 用途:用于存储可变长度的字符数据。只占用实际存储字符所需的空间,适合存储长度不确定的文本,如用户评论、文章标题等。
- text
- 范围:最大可存储 2 31 − 1 2^{31}-1 231−1个字符。
- 用途:用于存储大量的文本数据,但在新的应用开发中,更保举利用varchar(max),因为text类型有一些功能限制。
- nchar
- 格式:nchar(n),n体现固定长度,范围是1到4000。存储Unicode字符,每个字符占用2个字节。
- 用途:用于存储固定长度的Unicode字符数据,如存储多种语言的固定长度文本,像产品名称大概包罗多种语言字符。
- nvarchar
- 格式:nvarchar(n),n体现最大长度,范围是1到4000。存储Unicode字符。
- 用途:存储可变长度的Unicode字符数据,适合存储多种语言的文本,如用户的多语言昵称。
- ntext
- 范围:最大可存储 2 30 − 1 2^{30}-1 230−1个Unicode字符。
- 用途:用于存储大量的Unicode文本数据,不外在新开发中也逐渐被nvarchar(max)取代。
- 日期和时间类型
- date
- 范围:从公元1年1月1日到9999年12月31日。
- 格式:存储格式为YYYY - MM - DD。
- 用途:专门用于存储日期,如生日、项目开始日期等,方便按日期进行数据查询和分析。
- time
- 范围: 00 : 00 : 00.0000000 00:00:00.0000000 00:00:00.0000000到 23 : 59 : 59.9999999 23:59:59.9999999 23:59:59.9999999。
- 格式:存储格式为hh:mm:ss[.nnnnnnn]。
- 用途:用于存储时间信息,如会议时间、航班腾飞时间等,也可用于计算时间间隔。
- datetime2
- 范围:从公元1年1月1日00:00:00.0000000到9999年12月31日23:59:59.9999999。
- 格式:YYYY - MM - DD hh:mm:ss[.nnnnnnn],精度最高到7位小数秒。
- 用途:用于必要高精度时间记录的场景,如金融交易时间戳、高精度体系日志等。
- datetimeoffset
- 范围:与datetime2类似。
- 格式:YYYY - MM - DD hh:mm:ss[.nnnnnnn] [+|-]hh:mm,包罗时区偏移量。
- 用途:在处理涉及多个时区的时间数据时很有效,如跨国公司业务数据、全球分布式体系日志等。
- smalldatetime
- 范围:从1900年1月1日到2079年6月6日。
- 格式:YYYY - MM - DD hh:mm:00,精度到分钟。
- 用途:实用于对时间精度要求不高的场景,如简朴日程安排体系。
- datetime
- 范围:从1900年1月1日到2079年6月6日。
- 格式:YYYY - MM - DD hh:mm:ss[.nnn],精度到毫秒。
- 用途:是传统的日期时间类型,用于存储日期和时间信息,不外在新开发中逐渐被datetime2取代。
- 二进制类型
- binary
- 格式:binary(n),n体现字节的固定长度,范围是1到8000。
- 用途:用于存储固定长度的二进制数据,如存储加密后的暗码(固定长度加密结果)。
- varbinary
- 格式:varbinary(n),n体现字节的最大长度,范围是1到8000。
- 用途:用于存储可变长度的二进制数据,如存储图片、音频等文件的二进制数据。
- image
- 范围:最大可存储 2 31 − 1 2^{31}-1 231−1字节。
- 用途:用于存储大量二进制数据,如大型图片或文档,但在新开发中逐渐被varbinary(max)取代。
- 其他类型
- cursor
- 用途:这是一种变量类型,用于在存储过程等中处理结果集,提供了一种逐行处理数据的方式,但利用起来相对复杂,必要谨慎。
- sql_variant
- 用途:可以存储SQL Server支持的各种数据类型的值,不外它的利用大概会带来一些性能和管理上的复杂性,通常在必要灵活存储不同类型数据的特殊场景下利用。
- table
- 用途:用于在存储过程等中暂时存储结果集,类似于一个暂时表,方便在步伐逻辑中进行数据的暂时处理。
- xml
- 用途:用于存储和操作XML格式的数据,在处理具有XML结构的数据,如配置文件、数据交换格式等场景下利用。
- hierarchyid
- 用途:用于体现层次结构的数据,如构造结构图、文件体系目录结构等,方便对层次结构数据进行查询和操作。
- geometry
- 用途:用于存储空间几何数据,如点、线、多边形等,在地理信息体系(GIS)等领域有应用。
- geography
- 用途:与geometry类似,但侧重于地球外貌的地理位置相干数据,如地图绘制、位置定位服务等。
- uniqueidentifier
- SQL Server 中的一种数据类型,用于存储全局唯一标识符(GUID)
- 待完善
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |