日期:2014-05-18  浏览次数:20766 次

累加时间的问题
我用JSP+ORACLE做的一个系统,其中有项功能是在网数据库添加内容时的XTIME字段,网里放的时候第一条纪录初始一个时间(如2007年04月20日10点),而第二条纪录放进去是2007年04月20日16点,第三条纪录放进去是2007年04月21日10点,第四条纪录是2007年04月21日16点.......以此类推,按天循环,就是每天2次,哪位高手能帮我改一下.
大致代码如下:
String   NewVals,InsertSQL,Columns;
    int   prov=4;String   XTIME= "2007-04-20-10 "
    Columns= "content,prov,sendtime,xuhao,fenlei,XTIME ";
    NewVals= " ' "+address+ " ', ' "+prov+ " ',sysdate,ny.nextval, ' "+StartTime+ " ',
' "+XTIME+ " ";
    InsertSQL= "INSERT   INTO   SMS_LH_CONTENT( "+Columns+ ")   VALUES   ( "+IsoConvertGb(NewVals)+ ") ";

------解决方案--------------------
在oracle库上写一个序列,然后每次插记录就调用这个序列。


这个序列要完成的功能就是时间迭加
------解决方案--------------------
对oracle序列不熟悉。

不过应该很简单,看看oracle的sql语法应该就可以的。
------解决方案--------------------
在oracle库上写一个序列,然后每次插记录就调用这个序列。


这个序列要完成的功能就是时间迭加
------------------------------------

这样好,顶个

写个存储过程也行
------解决方案--------------------

在oracle库上写一个序列,然后每次插记录就调用这个序列。


这个序列要完成的功能就是时间迭加
------------------------------------

这样好,顶个

写个存储过程也行


------解决方案--------------------
1、先查询数据库中的最后一条记录的时间
2、然后向数据库中插入数据
select max(XTIME) from tableName
Calendar c=Calendar.getInstance();
把查询结果赋给c
if(c.get(c.Hour)==10){
String time= " "+c.get(c.Year)+ "- "+c.get(c.Month)+ "- "+c.get(c.Date)+ "- "+16
insert into tableName(XTIME) values( "+time+ " )
}else{
c.set(c.get(c.Year),c.get(c.Month),c.get(c.date)+1)
String time= " "+c.get(c.Year)+ "- "+c.get(c.Month)+ "- "+c.get(c.Date)+ "- "+10
insert into tableName(XTIME) values( "+time+ " )
}
只是个思路,这么做成吗?