解决方案 »
- 怎样使TDBGrid某一列的背景色和字体显示为一定颜色?
- 用DBGRIDEH显示动态的主从表,不能统计从表的某字段,该怎么办?
- delphi 2005 贴图,还没装的可以先看看
- 做过进销存系统的朋友请进,关于存货成本核算的问题
- 如何防止图象被截取?怎样用 API 的方式实现用鼠标拖动控件?
- 错误:当前提供者不支持从单一执行恢复多个记录集。
- 如何在TDBImage中显示jpg格式的图形数据。(急!!)
- 向各位高手请教一个有关olecontainer的问题????????
- 结合TQuery类动态添加TCOMDOBOX的ITEMS问题~~
- 急求教,XE3编译后程序的操作系统兼容性问题
- 字符串问题
- dbgrid表中修改数据激活哪个事件 delphi
另外,你的语句有明显的问题:
1.ADOQuery.close;后要接ADOQuery.clear;否则第二次查询时SQL的内容会加上第一次的。
2.ADOQuery.open=ADOQuery.active:=true
我说的不一定对,只是提点建议。
其它看不出有什么问题F7运行
看看查询结果有没有数据?
每一个If语句是否成立?
这里已经添回列表。要更新的名都显示出来了代码别的地方用无问题就在这里用不了不知道为什么。
单步跟踪也是更新了五次
adoquery1.lockType:=ltBatchOptimistic
var gpi:integer;
gpgx,gpname:string;
begin
gpi:=0;
with form1 do
begin
gpgx:=getregstring('HKEY_LOCAL_MACHINE\SYSTEM\金金工作室','旧片更新');
if gpgx <>formatDateTime('yyyymmdd',now) then
begin
webtxt.Items.Add('今天还未更新旧片,更新中');
with ADOQuery1 do
begin
Close;
SQL.Clear
SQL.Add('select * from login order by 修改时间');
Open;
//ADOQuery1.Active:=true;
First;
while not Eof do
begin
if FieldByName('播放次数').AsInteger <50 then
begin
gpname := FieldByName('影片名称').AsString;
webtxt.Items.Add('正在更新:'+gpname);
Edit;
FieldByName('修改时间').AsString:=formatDateTime('yyyymmddhhmmss',now);
Post;
end;
gpi:=gpi+1;
if gpi>4 then break;
Next;
end;
Close;
end;
ADOConnection1.Close;
setreg_sz('HKEY_LOCAL_MACHINE\SYSTEM\金金工作室','旧片更新',formatDateTime('yyyymmdd',now));
end
else
begin
webtxt.Items.Add('今天已经更新过旧片');
end;
end;