Msq 中tinyint字段对应 java中哪个类型?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Msq 中tinyint字段对应 java中哪个类型?相关的知识,希望对你有一定的参考价值。

tinyint在JAVA中对应是byte型.

java:Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。

tinyint:TINYINT ,字段类型,如果设置为UNSIGNED类型,只能存储从0到255的整数,不能用来储存负数。

参考技术A

mysql 中的tinyint(1)的使用

在MySql中如何定义像Java中类型的Boolean类型数据..其实,mysql中 是没有直接定义成Boolean这种数据类型.

它只能定义成 tinyint(1) ;

当booean 等于1 代表true,boolean 等于2的时候代表false;

如果在pojo中需要定义成Boolean类型映射Mysql中的tinyint(1)类型.

在Hibernate配置文件中,可以这样配置.

<property name="status" type="java.lang.Boolean"> <column name="STATUS" sql-type="tinyint(1)"$amp;>amp;$lt;/column> </property>

tinyint

0 到 2551 字节

所以就对应byte了(当然比byte长的类型也能符合要求了)

思路:先看看tinyint是几个字节,再找java中对应的有没有,没有就找比本类型长的了

表中的“类型”字段,不会少吧,比如订单有订单类型、取消原因类型等等10来个类型字段,(这些类型,最多有10多个值,再加也多不到哪去),其他的虽然少,但是一个表最少有1个吧,算这400多个表“类型”字段一共500个吧,我们来算一下数据空间的差别(假设数据都是500万条):

使用tinyint:5000000*1*500/1024/1024 = 2384MB

使用int:5000000*4*500/1024/1024 =  9537MB

光数据存储,相差就是几个G,还有数据库日志呢,绝对不会比数据少(现在生产环境数据已经差不多到达1000多万了)

字段大,对于数据库查询、数据传输等方面都会有很大影响的,所以不要小看 Int和tinyint类型的选择!我们系统很多都是开发者自己建立的数据库表,int在和程序中方便使用,直接用Int了,根本不会考虑效率问题,这是需要重视的。

MySQL 中 的 bit 类型,tinyint;

之前一直以为 mysql中没有 bit类型,需要使用 tinyint 来标识 bit。但是前端的实体类,不好控制,后来发现这些问题已经有了默认的统一设置,这样反而更好。

 

总结:MySQL中 使用布尔类型的字段,就用 tinyint(1),true 为1 false 为0

辅助参考文章:https://blog.csdn.net/dianjun2454/article/details/101950943

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

以上是关于Msq 中tinyint字段对应 java中哪个类型?的主要内容,如果未能解决你的问题,请参考以下文章

Spark JDBC系列--Mysql tinyInt字段特殊处理

MySQL "tinyInt1isBit or tinyint" 相关问题解析

为啥从数据库取出来的值为1,0,用java取出来变成true,false

djangoORM 通过外键字段找对应类

mysql有布尔类型吗?

哪个更快: char(1) 或 tinyint(1) ?为啥?