首页 > 数据库技术 > 详细

关于oracle中数据类型的选择

时间:2016-02-10 13:07:35      阅读:189      评论:0      收藏:0      [点我收藏+]

由于是初学,犯了如下错误:

生成表的主键id时,用当前时间的毫秒值。而在oracle中定义主键id时,用的数据类型是char(32)。在mybatis中通过id取数据怎么也取不出来。想了好几天,本来以为是浏览器中取id是带有空值,于是乎就用trim()函数去除空值,但还是没有查出数据,最后才发现是数据库中的数据类型定义成固定长度了,当前时间的毫秒值只有16位,而char(32)就是固定长度的32位,意思也就是说有16位是空格了,所有没法取出数据。动手将char(32)改成varchar2(32),重新查询,一切正常。

问题是解决了,但是用当前时间的毫秒值作为id是不可取的,于是乎就将其改成了uuid生成的固定长度的32为数作为id。重新将id数据类型改成了char(32)。问题也就随之解决了,大过年的,找了好几天。说多了都是泪啊。

关于oracle中数据类型的选择

原文:http://www.cnblogs.com/liuranjsj/p/5185927.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!