公司用oracle的数据库,以前直接存实体的时候没出现时间转换问题。
昨天,手写SQL语句(不是HQL)时,传Date类型的数据给时间列,oracle报错,不能识别,语句无效。解决方法共享:
方法一:
把Date类型的数据,用SimpleDateFormat将Date类型转换成String 类型
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
dateFormat.format(数据);
然后在语句中加入oracle数据库自己的to_date()方法转换
"update student set birth = to_date(' " + 转换后的数据 + " ','yyyy-MM-dd HH24:mi:ss' )";
方法二:
用实体,把date类型的数据作为实体的一个属性,然后直接存实体。
本文分享了在使用Oracle数据库时,遇到将Date类型数据插入时间列导致的错误,提供了两种解决方法:一是将Date类型数据通过SimpleDateFormat转换为String类型,再使用Oracle的to_date()函数进行转换;二是直接使用实体类存储包含Date类型的属性,避免了数据类型不匹配的问题。
4811

被折叠的 条评论
为什么被折叠?



