oracle踩过的坑

#默认库配置
      url: jdbc:oracle:thin:@ip:1521:smis(SID名)
      driver: oracle.jdbc.driver.OracleDriver
      username: xxx
      password: xx
      maxActive: 50
      minIdle: 5
      maxWait: 60000

 

sid可以这样查询

select instance_name from sys.v_$instance;

 mybatis中传值或查询时出现的问题:

查询数字时,小数点前0不显示,返回.几的问题:

  原因:查询数字字段时,对于小于1的小数,不显示小数点前面的0,Oracle会将小数点前的0和小数点后的0隐去(例如:0.10会变为.1).

  解决办法:把数值类型转换为字符型,加上to_char(数值,'fm9990.0099')  例如: to_char(0.340,'fm99990.0099')

 对于char类型的字段,查询不出数据的问题:

  原因:Oracle保存数据的时候会对不足位数的内容在后面用空格进行补位

  解决办法:用trim()函数把值的空格去掉再作为条件进行查询,或者修改字段类型为VARCHAR2

将日期格式化为字符串并用日期排序报错的问题:

                                    错误示范:

 单独将日期转为字符串或按时间排序都没问题,两者合在一起便会报错 

  原因:

  解决办法:用转化后的日期进行排序

                       正确示范:          

 查表中前n条数据:

          select * FROM 表名 where ROWNUM <= n

例:select * FROM t_SalesWageInfo  where ROWNUM <= 10

posted on 2018-07-20 11:14  风景1573  阅读(465)  评论(0编辑  收藏  举报