用了整整两天来写完一张表(一共40字段)的插入操作,这个看起来很简单的操作,但是对于一张复杂的表,有很多的外键约束,非空约束,字段也有不同的数据类型。
对数据库的插入操作,首先要定义一个实体,把从前台获取的数据double封装进这个实体里面,插入的时候再从里面去取出数据。这个理解起来也很简单。但是写代码的时候就要格外注意,特别实在些sql语句给字段赋值的时候。下面详细列出几个重要的数据类型对应。
oracle数据库的number可以对应java中的int,double,long等基本的数据类型,CLOB对应java中的String类型,Oracle的Date对应java.util.Date,所以当你准备往数据库里写入程序获取的数据活着你就要做好转换的准备。
java,util.date和java.sql.date之间经常需要转换,这可能需要用到SimpleDateFormat的参与,simpleDateFormat主要用于对日期时间格式的转变,new SimpleDateFormat("yyyy-MM-dd").parse(String date)可以吧“2013-02-12”这样字符串转变成Date。new java.util.Date(new java.util.Date().getTime())可以进行java的date和sql的date的转变。
另外,再PreparedStatement里面设定参数时,clob用setString就行了,不必要用setClob,这样子会抛异常。