if p = '' then begin try il:= ListView1.Items.count; listview1.Items.Add;//添加操作 listview1.Items[il].Caption:=getstr(s,'^',1); LISTVIEW1.Items[il].SubItems.add(getstr(s,'^',2)); LISTVIEW1.Items[il].SubItems.add(macs); LISTVIEW1.Items[il].SubItems.add(getstr(s,'^',4)); LISTVIEW1.Items[il].SubItems.add(getstr(s,'^',4)); listview1.Items[il].ImageIndex:=1; except end;
try //ADOQuery1.close; //ADOQuery1.Prepared; zsql:='insert into pclist(电脑名,电脑IP,MAC地址,在线信息,保存信息) '+ 'values("'+getstr(s,'^',1)+'","'+getstr(s,'^',2)+'","'+macs+'","'+getstr(s,'^',4)+'","'+getstr(s,'^',4)+'")'; adoquery1.SQL.text:=zsql; adoquery1.ExecSQL; except end; end; if p <> '' then begin ADOedit.Close; ADOedit.sql.text:=('select * from pclist'); ADOedit.Active:=true; ADOedit.First; while not ADOedit.Eof do begin macdb:=ADOedit.Fields[3].AsString; if pos(uppercase(macs),uppercase(macdb)) > 0 then begin //memo1.text:=macdb; try ADOedit.Edit; ADOedit.FieldByName('电脑名').AsString :=getstr(s,'^',1); ADOedit.FieldByName('电脑IP').AsString :=getstr(s,'^',2); ADOedit.FieldByName('在线信息').AsString :=getstr(s,'^',4); ADOedit.Post; except end; //Break; end; ADOedit.Next; end; end;令我不明白的就是100个连接可能会有5-6个.如果说代码不正确的应该是每次都会啊. 为什么会这样呢??/ while not ADOedit.Eof do这个换成降序会不会好一些????
if p = '' then
begin
try
il:= ListView1.Items.count;
listview1.Items.Add;//添加操作
listview1.Items[il].Caption:=getstr(s,'^',1);
LISTVIEW1.Items[il].SubItems.add(getstr(s,'^',2));
LISTVIEW1.Items[il].SubItems.add(macs);
LISTVIEW1.Items[il].SubItems.add(getstr(s,'^',4));
LISTVIEW1.Items[il].SubItems.add(getstr(s,'^',4));
listview1.Items[il].ImageIndex:=1;
except end;
try
//ADOQuery1.close;
//ADOQuery1.Prepared;
zsql:='insert into pclist(电脑名,电脑IP,MAC地址,在线信息,保存信息) '+
'values("'+getstr(s,'^',1)+'","'+getstr(s,'^',2)+'","'+macs+'","'+getstr(s,'^',4)+'","'+getstr(s,'^',4)+'")';
adoquery1.SQL.text:=zsql;
adoquery1.ExecSQL;
except end; end; if p <> '' then
begin
ADOedit.Close;
ADOedit.sql.text:=('select * from pclist');
ADOedit.Active:=true;
ADOedit.First;
while not ADOedit.Eof do
begin
macdb:=ADOedit.Fields[3].AsString;
if pos(uppercase(macs),uppercase(macdb)) > 0 then
begin
//memo1.text:=macdb;
try
ADOedit.Edit;
ADOedit.FieldByName('电脑名').AsString :=getstr(s,'^',1);
ADOedit.FieldByName('电脑IP').AsString :=getstr(s,'^',2);
ADOedit.FieldByName('在线信息').AsString :=getstr(s,'^',4);
ADOedit.Post;
except end;
//Break;
end;
ADOedit.Next;
end;
end;令我不明白的就是100个连接可能会有5-6个.如果说代码不正确的应该是每次都会啊.
为什么会这样呢??/ while not ADOedit.Eof do这个换成降序会不会好一些????