sql server的date类型问题

pstmt.setDate(1,new java.sql.Date(2005, 11, 20));
提交后
数据库中的更新结果是(3905-12-20 00:00:00.000)

pstmt.setDate(1,new java.sql.Date(05, 11, 20));
结果为:
1906-01-20 00:00:00.000

这是什么原因造成的,请教!

DateFormat df=DateFormat.getDateTimeInstance();
........
ps.setString(1,df.format(new Date()));
........
jdbc会自动做出转换,将String类型塞进 DateTime类型 的数据列中。

+ 要对日期进行 比较 或者进行其它日期计算时,直接rs.getString(1);取出,然后再进行parse.

谢谢帮忙