标题:求段代码 asp 批量修改时间??
只看楼主
sunfeiyao
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2011-9-7
得分:0 
刷新总是 打印 FalseTrue
2012-06-06 15:07
coretear
Rank: 4
等 级:业余侠客
威 望:1
帖 子:102
专家分:244
注 册:2012-6-5
得分:0 
那已经执行成功了 兄弟 看数据库
2012-06-06 15:25
sunfeiyao
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2011-9-7
得分:0 
程序代码:
Dim Db,Conn
Db = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("01.mdb")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.open Db


'lid 开始id
'rid 结束id
'ldate 开始时间
'rdate 结束时间
Call SetDate(1,7,"2012-6-5 16:12:30","2012-6-5 22:12:32")
'打开数据库自己加


Function SetDate(lid,rid,ldate,rdate)
    Dim Sql,Rs,Total,ydate
    Set Rs = Server.Createobject("adodb.recordset")
    Total = 0
    'ydate = Now()'可指定固定时间
     ydate =  这个位置怎么指定时间段
    'Sql = "select id,ydate from Table_1 where id >= "&lid&" and id <= "&rid&" and DateDiff(""s"",ydate,'"&ldate&"') < 0 And DateDiff(""s"",ydate,'"&rdate&"') > 0"
    Sql = "select id,ydate from Table_1 where id >= "&lid&" and id <= "&rid&""

    'Response.write sql
    Rs.Open Sql,Conn,1,1
    If Rs.Bof Or Rs.Eof Then
       Response.write "False"
    Else
        Do Until Rs.EOF
            '当每超过三条数据的时候判断
            If (Total Mod 3)=0 Then
                '随机根据当前时间生成时间,加(1-1000)秒随机数,可以换分钟,小时
                ydate = DATEADD ("s" , Int((1000 * Rnd) + 1),ydate)
                '每3条+1天
                If Total <> 0 Then
                    ydate = DATEADD ("d" , 1, ydate)
                    Total = 0
                End If
               
            Else
                '随机根据当前时间生成时间
                ydate = DATEADD ("s" ,Int((1000 * Rnd) + 1), ydate)
            End If
        Response.write "<br><br>ID:"&Rs("id")&" 更新时间:"&ydate&"<br>"
        Sql = "Update Table_1 Set ydate='"&ydate&"' Where id="&Rs("id")
        Response.write Sql
        Conn.Execute(Sql)
        Total=Total+1    
        Rs.MoveNext
        Loop       
    End If
    Rs.Close
    Set Rs = Nothing
    Response.write "True"
End Function
'关闭数据库自己加
Conn.Close
Set Conn = Nothing



ydate =  这个位置怎么指定时间段
2012-06-06 15:28
coretear
Rank: 4
等 级:业余侠客
威 望:1
帖 子:102
专家分:244
注 册:2012-6-5
得分:0 
哎,无语了,我写的很清楚,now是指定时间的 默认是更新到当前时间
2012-06-06 15:34
sunfeiyao
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2011-9-7
得分:0 
ydate =2012-6-5 16:12:30至2012-6-5 22:12:32
这个时间段怎么写
2012-06-06 15:39
coretear
Rank: 4
等 级:业余侠客
威 望:1
帖 子:102
专家分:244
注 册:2012-6-5
得分:0 
'ldate 开始时间
'rdate 结束时间 才是指定 时间段的

ydate 是更新后的时间段  默认是当前时间 为依据 明白吗?

[ 本帖最后由 coretear 于 2012-6-6 15:49 编辑 ]
2012-06-06 15:46
sunfeiyao
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2011-9-7
得分:0 
不用指定时间更新,就是想什么时候更新都可以,


主要是指定更新后的时间段  


哎,我没说清楚不好意思
2012-06-06 15:55
coretear
Rank: 4
等 级:业余侠客
威 望:1
帖 子:102
专家分:244
注 册:2012-6-5
得分:0 
那就不需要这么麻烦了 ydate 指定一个 你想要的起始时间就可以 ydate = '2012-6-5 16:12:30' 程序会根据 这个时间 每3条改变一次时间
2012-06-06 16:05
sunfeiyao
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2011-9-7
得分:0 
如果想更新后的时间 都在 13点——15点之间   这个怎么写

[ 本帖最后由 sunfeiyao 于 2012-6-6 16:10 编辑 ]
2012-06-06 16:08
coretear
Rank: 4
等 级:业余侠客
威 望:1
帖 子:102
专家分:244
注 册:2012-6-5
得分:0 
ydate = '2012-6-5 12:12:30'
DATEADD ("hh" , Int((3 * Rnd) + 1),ydate)
2012-06-06 16:17



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-370881-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.041394 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved