oracle查询表数据写入时间,求大神解决关于查询Oracle表数据时间

这是查询方法:

//通过出发地、目的地、发车日期 查询车次

public List queryAll(String toAddress,String fromAddress,Date startDate){

String sql ="select * from tts_traininfo where toAddress like ? and fromAddress like ? and startDate like TO_DATE(?,'yyyy-mm-dd hh24:mi:ss')";

List list = new ArrayList<>();

Connection conn = DBConnection.getConnection();

try {

PreparedStatement pstm = conn.prepareStatement(sql);

pstm.setString(1, "%" + toAddress + "%");

pstm.setString(2, "%" + fromAddress + "%");

pstm.setString(3, "%" + startDate + "%");

ResultSet rs = pstm.executeQuery();

if (rs.next()) {

Train train = new Train(rs.getInt(1), rs.getString(2), rs.getString(3), rs.getString(4), rs.getDate(5),

rs.getDate(6), rs.getDouble(7));

list.add(train);

}

} catch (SQLException e) {

e.printStackTrace();

}

return list;

}

这是测试方法:

@Test

public void queryAll() {

Scanner sc = new Scanner(System.in);

System.out.println("请输入出发地:");

String toAddress = sc.nextLine();

System.out.println("请输入目的地:");

String fromAddress = sc.nextLine();

System.out.println("请输入发车日期:");

String sDate = sc.nextLine();

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");

Date date;

try {

date = sdf.parse(sDate);

Date startDate = new java.sql.Date(date.getTime());

System.out.println(startDate);

List list = tot.queryAll(toAddress, fromAddress, startDate);

System.out.println(list);

list.forEach((item) -> {

System.out.println(

item.getId() + "," + item.getTrainId() + "," + item.getToAddress() + "," + item.getFromAddress()

+ "," + item.getStartDate() + "," + item.getStartTime() + "," + item.getFares());

});

} catch (ParseException e) {

e.printStackTrace();

}

}

输入目的地、出发地、还有时间后 报错

请输入出发地:

北京

请输入目的地:

上海

请输入发车日期:

2018-06-08

2018-01-08

java.sql.SQLDataException: ORA-01841: (完整) 年份值必须介于 -4713 和 +9999 之间, 且不为 0

求大神解决!!! 急急急急!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值