MySQL Mybatis与数据库的类型对应

本文探讨了在使用Mybatis时,Java基本数据类型与MySQL、SQL Server和Oracle数据库之间的类型对应问题。强调了未初始化的int属性可能导致数据库污染,建议使用Integer类型以避免默认值带来的风险。同时提供了不同数据库的数据类型对照表。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Mybatis与数据库的类型对应

    由于业务的改变,在首次存入数据库时某些int属性并没有赋值,于是默认值就开始污染数据库了。

  当基本数据类型定义的变量作为类的成员使用时,Java会确保给定默认值,以保证这些成员变量得到初始化,以防止产生程序错误。但是,这些初始值对程序来说,可能不正确,甚至是不合法的,比如在我这个工程的业务中默认值0就非法。如果一定要使用基本数据类型,最好明确地对变量进行初始化。在对应数据库中的数值类型时,个人强烈建议使用Integer!不能因为一时的想法就去偷懒,而留下安全隐患。

基本成员默认值
基本类型默认值
doubleo.0d
float0.0f
long0L
int0
shot0
byte(byte)0
char"\u0000"(null)
booleanfalse

      java实体属性对应mysql和SQL Server 和Oracle 数据类型对应

1:Java数据类型与MySql数据类型对照表


*对于bolb,一般用于对图片的数据库存储,原理是把图片打成二进制,然后进行的一种存储方式,在java中对应byte[]数组。

对于boolen类型,在mysql数据库中,个人认为用int类型代替较好,对bit操作不是很方便,尤其是在具有web页面开发的项目中,表示0/1,对应java类型的Integer较好。

2: sqlserver数据库对应java中的数据类型

3:sqlserver和Oracle数据类型对应关系

SqlServer 2k转换为Oracle 10g

 
 

Oracle 10g 转换为SqlServer 2k

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值