smallint是sql的数据类型吗_char数据类型

smallint是sql的数据类型吗_char数据类型环境:SQLServer2008R2 使用整数数据的精确数字数据类型。

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

环境:SQLServer 2008 R2 
使用整数数据的精确数字数据类型。
bigint
从 -2^63 (-9223372036854775808) 到 2^63-1(9223372036854775807) 的整型数据
(所有数字)。存储大小为 8 个字节。
   www.2cto.com  
int
从 -2^31 (-2,147,483,648) 到 2^31 – 1(2,147,483,647) 的整型数据(所有数字)。
存储大小为 4 个字节。int 的 SQL-92 同义字为 integer。
 
smallint
从 -2^15 (-32,768) 到 2^15 – 1 (32,767) 的整型数据。存储大小为 2 个字节。
 
tinyint
从 0 到 255 的整型数据。存储大小为 1 字节。
 
注释
 
在支持整数值的地方支持 bigint 数据类型。但是,bigint 用于某些特殊的情况,
当整数值超过 int 数据类型支持的范围时,就可以采用 bigint。在 SQL Server 中,
int 数据类型是主要的整数数据类型。
 
在数据类型优先次序表中,bigint 位于 smallmoney 和 int 之间。
 
只有当参数表达式是 bigint 数据类型时,函数才返回 bigint。SQL Server 不会自动
将其它整数数据类型(tinyint、smallint 和 int)提升为 bigint。
  
使用 +、-、*、/ 或 % 等算术运算符将 int、smallint、tinyint 或 bigint 常量值隐式
或显式转换为float、real、decimal 或 numeric 数据类型时,SQL Server 计算数据类型
和表达式结果的精度时应用的规则有所不同,这取决于查询是否是自动参数化的。
因此,查询中的类似表达式有时可能会生成不同的结果。 如果查询不是自动参数化的,
则将常量值转换为指定的数据类型之前,首先将其转换为 numeric,该数据类型的精度很大
足以保存常量的值。例如,常量值 1 转换为 numeric (1, 0),常量值 250 转换为 numeric (3, 0)。
如果查询是自动参数化的,则将常量值转换为最终数据类型之前,始终先将其转换为 numeric 
(10, 0)。如果涉及 / 运算符,则对于类似查询而言,不仅结果类型的精度可能不同,
而且结果值也可能不同。例如,包含表达式 SELECT CAST (1.0 / 7 AS float) 的自动参数化
查询的结果值将不同于非自动参数化的同一查询的结果值,因为自动参数化查询的结果将被截断
以适合 numeric (10, 0) 数据类型。 
转换整型数据
将整数隐式转换为字符数据类型时,如果整数太大而无法容纳到字符字段中,则 SQL Server 
会输入 ASCII 字符 42,即星号 (*)。 
大于 2,147,483,647 的整数常量将转换为decimal 数据类型,而不是 bigint 数据类型。
下面的示例显示当超过此阈值时,结果的数据类型将从 int 变为 decimal。 
SELECT2147483647 / 2 AS Result1, 2147483649 / 2 AS Result2 ;
下面是结果集: 
Result1      Result2
1073741823   1073741824.500000
 
总结 
数据类型的选择要根据实际情况而定,最好能满足需求。不要杀鸡用牛刀,因为对空间的浪费
会很严重,效率也会受到一定的影响。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193068.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • dpkg命令的用法

    dpkg命令的用法dpkg命令的用法dpkg是Debianpackage的简写,为”Debian“操作系统专门开发的套件管理系统,用于软件的安装,更新和移除。所有源自"Debian"的Linux的发行版都使用dpkg,  例如"Ubuntu" 阅读目录 安装软件列出与该包先关联的文件显示包的版本移除软件(保留配置)移除软件(不保留配置)查找包的详细信息列出deb包的内容 安装软件命令:dpkg-i&…

    2022年5月11日
    72
  • 微生物组-宏基因组分析第8期 (报名直播课免费参加线下2020.7)[通俗易懂]

    微生物组-宏基因组分析第8期 (报名直播课免费参加线下2020.7)[通俗易懂]“福利公告:为了响应学员的学习需求,经过易生信培训团队的讨论筹备,现决定安排扩增子16S分析、宏基因组、Python课程和转录组的线上直播课。报名参加线上直播课的老师可在1年内选择参加同…

    2022年5月23日
    35
  • 学生选课管理系统_学生管理系统的主要内容

    学生选课管理系统_学生管理系统的主要内容文件下载地址:https://download.csdn.net/download/axiebuzhen/108950621.业务描述设计本系统,模拟学生选课的部分管理功能。学生入校注册后需统一记录学生个人基本信息,对于面向学生开设的相关课程需要记录每门课程的基本信息,每个任课教师规定其可主讲三门课程,学生选课时系统将相应的选课信息记录入库,考试结束后需在相应的选课记录中补上考试成绩。简化…

    2022年10月15日
    4
  • Spring Data JPA插入

    Spring Data JPA插入save 方法是面向业务的 每次插入都需要验证当前数据是否为新数据 Transactiona SextendsT Ssave Sentity if this entityInform isNew entity this em persist entity SextendsT

    2025年8月25日
    2
  • 数据库主键与外键

    数据库主键与外键主键概念 主关键字 primarykey 是表中的一个或多个字段 它的值用于唯一地标识表中的某一条记录 外键概念 外键 foreignkey 能保持数据的一致性 完整性主键用力啊标识数据的唯一性 而外键主要保证多张表的数据一致性 也就是需要保持多表同一数据的一致性 也许直接晦涩的解释其概念 对于起步接触数据库的人来说不太友好可以看如下实际用例 建一张 department 表 也可以把其理解为主表 这张主表用于记录部门 id 的唯一性 createtabled idintpr

    2025年6月22日
    4
  • Oracle insert into select大数据量踩过的坑

    Oracle insert into select大数据量踩过的坑1、简单粗暴insertintotable1select*fromtable2;commit;灰度环境机器配置不好,二百多万数据十来分钟没有导完,产生大量归档日志。删除索引约束后可能要好点。大数量有风险,可能会导致归档日志撑爆。2、nologgingaltertabletable1nologging;insert/*+append*/intotable…

    2022年7月15日
    86

发表回复

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

关注全栈程序员社区公众号