首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 如何用for语句对日期型变量进行循环? [已结贴,结贴人:hhyhappy]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hhyhappy
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    • 揭帖率:
    发表于:2008-02-29 14:59:25 楼主
    开始日期为begindate,结束日期为enddate,我想把这个时间段内的所有日期保存到数据库。

    我这样写,数据库里面为空!请各位大虾帮忙!

    Dim  intDateNum
    intDateNum  =  DateDiff( "d ", "begindate", "enddate")

    For  loopi  =  0  To  intDateNum 
    pricedate=DateAdd( "d ",loopi, "begindate")

    set rs8=Server.CreateObject("ADODB.Recordset")
    rs8.open "select * from prices",db.conn,1,3
    rs8.addnew
    rs8("pricedate")=pricedate(loopi)
    rs8.update
    next
    rs8.close
    set rs8=nothing

    80  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • songpengasp
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-02-29 15:04:081楼 得分:5
    rs8("pricedate")=pricedate
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • tantaiyizu
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    • 2

    发表于:2008-02-29 15:04:482楼 得分:5
    遍历的出来的间隔 ,每个元素代表一个日期;
    可以考虑用数组实现:
    数组下标在间隔中去一个,数组值等于代表的日期
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • showbo
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    • 3

      3

    发表于:2008-02-29 15:11:133楼 得分:30
    try

    VBScript code
    Dim intDateNum intDateNum = DateDiff( "d", "begindate", "enddate") '============== set rs8=Server.CreateObject("ADODB.Recordset") rs8.open "select * from prices",db.conn,1,3 '============== For loopi = 0 To intDateNum pricedate=DateAdd( "d",loopi, "begindate") rs8.addnew 'rs8("pricedate")=pricedate(loopi) '你的pricedate是函数??怎么和你上面的变量一样? 'rs8("pricedate")=pricedate next '========== rs8.update '========== rs8.close set rs8=nothing
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • showbo
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    • 3

      3

    发表于:2008-02-29 15:13:334楼 得分:0
    VBScript code
    Dim intDateNum intDateNum = DateDiff( "d", "begindate", "enddate") '==============创建recordset放这里 set rs8=Server.CreateObject("ADODB.Recordset") rs8.open "select * from prices",db.conn,1,3 '============== For loopi = 0 To intDateNum pricedate=DateAdd( "d",loopi, "begindate") rs8.addnew 'rs8("pricedate")=pricedate(loopi) '你的pricedate是函数??怎么和你上面的变量一样? rs8("pricedate")=pricedate'=========汗,把这行注释了. next '========== rs8.update '最后再更新 '========== rs8.close set rs8=nothing
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hhyhappy
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-02-29 15:51:445楼 得分:0
    to showbo:pricedate还是保存不上!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hhyhappy
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-02-29 16:00:136楼 得分:0
    结果是0:00:00
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • showbo
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    • 3

      3

    发表于:2008-02-29 16:13:487楼 得分:0
    你先试输出结果看对不对,先别更新数据库

    VBScript code
    Dim intDateNum intDateNum = DateDiff( "d", "begindate", "enddate") '==============创建recordset放这里 'set rs8=Server.CreateObject("ADODB.Recordset") 'rs8.open "select * from prices",db.conn,1,3 '============== For loopi = 0 To intDateNum pricedate=DateAdd( "d",loopi, "begindate") response.write pricedate&"<br/>" 'rs8.addnew 'rs8("pricedate")=pricedate(loopi) '你的pricedate是函数??怎么和你上面的变量一样? 'rs8("pricedate")=pricedate'=========汗,把这行注释了. next '========== 'rs8.update '最后再更新 '========== 'rs8.close 'set rs8=nothing
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • xukids
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-02-29 16:19:328楼 得分:5
    intDateNum      =      DateDiff(  "d",  "begindate",  "enddate") 

    里面的begindate,enddate应该全是变量吧,怎么全加引号的啊?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hhyhappy
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-02-29 16:23:129楼 得分:0
    begindate,enddate全是变量,

    to showbo:按照你说的测试,没有输出任何结果!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • cnchart
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-02-29 16:24:2510楼 得分:35
    HTML code
    <%Dim intDateNum begindate=#2008-2-1# enddate=#2008-2-29# intDateNum = DateDiff("d", begindate, enddate) For loopi = 0 To intDateNum pricedate=DateAdd("d",loopi, begindate) response.write cDate(pricedate)&"<BR>" next %>
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • cnchart
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-02-29 16:26:2511楼 得分:0
    HTML code
    <%Dim intDateNum begindate=#2008-2-1# enddate=#2008-2-29# intDateNum = DateDiff("d", begindate, enddate) set rs8=Server.CreateObject("ADODB.Recordset") rs8.open "select * from prices",db.conn,1,3 For loopi = 0 To intDateNum pricedate=DateAdd("d",loopi, begindate) rs8.addnew rs8("pricedate")=cDate(pricedate) response.write cDate(pricedate)&"<BR>" next rs8.update rs8.close set rs8=nothing %>
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hhyhappy
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-02-29 16:27:2012楼 得分:0
    to cnchart:
    按照你上面写的,就全都输出结果了,但是begindate,  enddate是变量怎么表示呢?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hhyhappy
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-02-29 16:37:1713楼 得分:0
    好了,多谢各位!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • showbo
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    • 3

      3

    发表于:2008-02-29 16:39:2214楼 得分:0
    ....我以为用字符串表示是为了说明清楚,没想到你还真的把"begindate"和"enddate"当变量来用啊...

    可以这样定义
    VBScript code
    '假设你提交到服务器的开始日期为request("bd"),结束日期为request("ed") dim begindate,enddate:begindate=cdate(request("bd")):enddate=cdate(request("ed"))
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • tantaiyizu
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    • 2

    发表于:2008-02-29 16:40:0915楼 得分:0
    -d
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved