笔记:Mysql--Date型数据的存储

来源:互联网 发布:淘宝办签证会有假的吗 编辑:程序博客网 时间:2024/06/04 19:48

悲哀呀,弄了个通宵结是因为多写了个引号,拼sql字符串果然不是人干的活,听说反射可以不用手打,等睡醒了试试

问题

同学做的前端网页日期格式:08/13/2015
我的数据库日期格式为:2015-01-22
当insert出错时,我就蒙逼了,数据库竟然不认识!

解决办法

用的com.mysql.jdbc.Driver
反正也是拼sql字符串,只要Date类那列的值是个时间格式的字符串就好了,关键就在于数据库认不认识(思路好重要,你小子这点都没想通活该熬通宵)

//就是各种SimpleDateFormattry{    String s1 = "08/13/2015";//注册页面表单提取出来的值    //参数里是即将转换的sql的格式,变身全靠他    SimpleDateFormat sf = new SimpleDateFormat("dd/MM/yyyy");    Date date = sf.parse(s1); //转化成Date,一开始以为要用Date类型的变量insert    sf = new SimpleDateFormat("yyyy-MM-dd");//数据库认可的格式,精通此道的还有yyyy-MM-dd HH:mm:ss    String s2 = sf.format(date);//再次转换就变成可以插的字符串格式了 } catch (Exception e) {    e.printStackTrace(); }

PS:

  1. 碰到了诡异的事情:Date→字符串时会按照new SimpleDateFormat(S)参数里的格式化
  2. 但是Date←String是,输出Date会变成“Fri Jan 08 00:00:00 CST 2016”这种格式
  3. 现在想明白了,Date.toString可不是全都输出么,∴不同方向的转换参数的用途也不一样呀
  4. 写博客果然有好处,现在想想代码里就有好多提示,我都没注意T,T
0 0
原创粉丝点击