遍历数据库然后判断更新的有关问题
遍历数据库然后判断更新的问题
在写个程序的时候遇到问题,向各位求助。想实现的功能如下:遍历数据库的记录,读取当前记录的4个时间值d1,d2,d3,d4,然后与当前时间today做对比,如果符合条件,则更新该条数据的某一项值。想求教各位如何实现。或者告诉我,我写的哪个地方出现了问题。谢谢。
------解决方案--------------------
执行代码看看有什么问题
------解决方案--------------------
写成存储过程 方便些
declare @today datetime
if(SELECT datediff( day, @today, ATime )……)>5 UPDATE Item SET TimeLimit = '1'
------解决方案--------------------
按你上面的代码,只是让D1在〉5的时候执行更新
你的本意是希望从D1~D4都大于5的时候才执行,还是想d1~d4只要任意一个大于5都执行呢?
如果是d1~d4都大于5的时候执行就:
if date1>5 and date2>5 and date3>5 and date4>5 then
如果是d1~d4任意一个大于5就执行的话就:
if date1>5 or date2>5 or date3>5 or date4>5 then
在写个程序的时候遇到问题,向各位求助。想实现的功能如下:遍历数据库的记录,读取当前记录的4个时间值d1,d2,d3,d4,然后与当前时间today做对比,如果符合条件,则更新该条数据的某一项值。想求教各位如何实现。或者告诉我,我写的哪个地方出现了问题。谢谢。
- JScript code
dim Today Today=date() set rs=Server.CreateObject("ADODB.RecordSet") sql="select * form Item" rs.Open sql,conn,1,3 if rs.RecordCount=0 then response.write "当前无数据!" else for i = 0 to rs.RecordCount-1 if rs.EOF Then Exit For date1=dateiff("d",Today,rs("ATime"))//判断与当前日期的差的天数 date2=dateiff("d",Today,rs("BTime")) date3=dateiff("d",Today,rs("CTime")) date4=dateiff("d",Today,rs("DTime")) if date1>5 then set rs1=Server.CreateObject("ADODB.RecordSet") Renew="UPDATE Item SET TimeLimit = '1'" //如果差的天数符合条件,就更新当前记录里面的TimeLimit rs1.Open Renew,Renew,1,3 set rs1 = nothing end if rs.MoveNext next End if
------解决方案--------------------
执行代码看看有什么问题
------解决方案--------------------
写成存储过程 方便些
declare @today datetime
if(SELECT datediff( day, @today, ATime )……)>5 UPDATE Item SET TimeLimit = '1'
------解决方案--------------------
按你上面的代码,只是让D1在〉5的时候执行更新
你的本意是希望从D1~D4都大于5的时候才执行,还是想d1~d4只要任意一个大于5都执行呢?
如果是d1~d4都大于5的时候执行就:
if date1>5 and date2>5 and date3>5 and date4>5 then
如果是d1~d4任意一个大于5就执行的话就:
if date1>5 or date2>5 or date3>5 or date4>5 then