JAVA在数据库中插入日期,日期由字符串变量传递值,占位符?要用单引号吗,怎么写?
StringBuildersqlcmd=newStringBuilder();sqlcmd.append("insertintosfism4.u_sfis_daily_c...
StringBuilder sqlcmd = new StringBuilder();
sqlcmd.append("insert into sfism4.u_sfis_daily_check_t ");
sqlcmd.append(" (SELECT LINE_NAME,SECTION_NAME,GROUP_NAME,STATION_NAME,0,to_date(?, 'yyyy-mm-dd hh24:mi:ss'),0 FROM sfis1.U_SFIS_INSPECTION_DEVICE_T ");
sqlcmd.append("where LINE_NAME=? AND ROWNUM=1) ");
第一个占位符?要怎么写,引号需要吗,设置值如下
ps.setString(1, sdf.format(fromDate));
ps.setString(2, lineName);
其中fromDate是一个字符串,类似这样2014-3-11 13:50:00 展开
sqlcmd.append("insert into sfism4.u_sfis_daily_check_t ");
sqlcmd.append(" (SELECT LINE_NAME,SECTION_NAME,GROUP_NAME,STATION_NAME,0,to_date(?, 'yyyy-mm-dd hh24:mi:ss'),0 FROM sfis1.U_SFIS_INSPECTION_DEVICE_T ");
sqlcmd.append("where LINE_NAME=? AND ROWNUM=1) ");
第一个占位符?要怎么写,引号需要吗,设置值如下
ps.setString(1, sdf.format(fromDate));
ps.setString(2, lineName);
其中fromDate是一个字符串,类似这样2014-3-11 13:50:00 展开
2014-03-12
展开全部
占位符 不需要引号 就直接一个问号就行了 然后用 ps.setString(1,"2014-3-11 13:50:00")
更多追问追答
追问
我想传一个变量,而且 这样写也不能传入数据库啊。。
追答
变量只要是个String型的 就可以用这种方式传进sql语句中啊。。
展开全部
不需要引号。本身就是个字符串。第一个传字符串可以了
更多追问追答
追问
数据库里的字段是date类型,不能穿String,所有要用to_date进行转换,怎么实现用占位符传递变量转换成日期类型,这个要怎么写才对
追答
我有点疑问。
你不就是要传字符串类型。然后用to_date转换成日期类型么?你既然sql用to_date了里面不适用字符串类型么?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
ps.setString(1, sdf.format(fromDate));
改成ps.setString(1, fromDate);放个字符串数据类型的就好,不要转换成日期数据类型
改成ps.setString(1, fromDate);放个字符串数据类型的就好,不要转换成日期数据类型
追问
数据库里的字段是date类型,不能穿String,所有要用to_date进行转换,怎么实现用占位符传递变量转换成日期类型
追答
在sql语句 insert into table (a,b,c,d) values (to_date(?,'yyyy-mm-dd hh24:mi:ss'),b,c,d);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询