标题:哪位能给我解答一下这个问题?
取消只看楼主
leon84811
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2007-12-28
 问题点数:0 回复次数:3 
哪位能给我解答一下这个问题?
一、有个日期表,其中内容如下:
2007年12月20日 对应 A
2007年12月21日 对应 B
2007年12月22日 对应 C
...
二、先取系统当前日期(就取日期不取时间),然后把当前日期往后推20天,(如今天是12月1日,那就把这个值加20,也就是把当取的值变为12月21日)然后再进入日期表内,和日期表内的日期对应执行相应的值(12月21日就执行B)。

当前日期--(往后推20日)-- 新值 --找对应的值--执行
12月1日 -- (后20天) --12月21日 --对应 B --执行B

注意,这个会跨月份及年份。并不一定是在12月.


本来我想通过批处理编的,但是一分析下来发现代码会很多,所以想通过VB来实现,现在我已经搞了个小代码来推日期:
@echo off
>tmp.vbs echo wscript.echo dateadd("d",20,date)
for /f "tokens=1,2,3* delims=-" %%i in ('cscript /nologo tmp.vbs') do (
set /a "y=%%i,m=%%j,d=%%k"
)
for /f "tokens=1* delims= " %%a in (日期表.txt) do (
if /i "%%a"=="%y%年%m%月%d%日" echo %%b
)
tmp.vbs  
del tmp.vbs

也是批处理的,呵呵,但下面我不知道怎么进行,有高人来帮我指点指点吗?
搜索更多相关主题的帖子: 年份 解答 系统 时间 
2007-12-28 15:51
leon84811
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2007-12-28
得分:0 
回复 2# 的帖子
是取今天的日期,都从今天的日期开始往后推20天,然后再进日期表中 找对应的值,
本来那个所对应的A,B,等等 是一个值,但其实我是要这个值,在接下来的语句中用到,接下来执行的是一个SQL的语句,也就是更改SQL2000里的一个数据库里的一张表里的一个值,呵呵,好像太复杂了,SQL语句是通过批处理实现,比如A是abc:
@echo off
isql -U iss -P iss -d youku -Q "update t_system set value='abc' where id='1'
isql -U iss -P iss -d youku -Q "update t_system set value='abc' where id='new'
日期表的内容如下:
2007年12月20日 对应 A
2007年12月21日 对应 B
2007年12月22日 对应 C
。。。。。
这个日期表我没做,不过现在是保存在TXT文档里,格式就是上面那种。
2007-12-28 17:22
leon84811
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2007-12-28
得分:0 
怎么没人帮我呢?
是我说得不清楚还是什么?帮帮我呀~
2007-12-28 20:36
leon84811
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2007-12-28
得分:0 
再说明白点
我再说明白点吧,之所以取后20天的日期,是为了找到那天所以对应的值,也就是上面所说的日期表里对应,值找到了,就把它代入到我的SQL修改语句中:
@echo off
isql -U iss -P iss -d youku -Q "update t_system set value='20天后的值' where id='1'
isql -U iss -P iss -d youku -Q "update t_system set value='20天后的值' where id='new'


这个就是我的思路,也放还不完整,但是很希望各位大侠能帮帮我,我怎么也想不出如何实现。
2007-12-29 10:49



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




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

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