E
evenzaj
Unregistered / Unconfirmed
GUEST, unregistred user!
VAR
J:INTEGER
MM:ARRAY OF STRING;
以上是全局变量
procedure TForm1.Button2Click(Sender: TObject);
VAR
K,M,X:INTEGER;
begin
WITH ADOQUERY3 DO
BEGIN
CLOSE;
SQL.Clear;
SQL.Add('SELECT COUNT(*)CO1 FROM EMPLOYEE');
OPEN;
IF NOT ADOQUERY3.IsEmpty THEN
J:=FIELDBYNAME('CO1').AsInteger;
SETLENGTH(MM,J);
END;
ADOQUERY2.OPEN;
FOR K:=0 TO J-1 DO
BEGIN
WHILE NOT ADOQUERY2.Eof DO
BEGIN
MM[K]:=ADOQUERY2.FIELDBYNAME('EMP_NAME').AsString;
ADOQUERY2.NEXT;
END
//这里动态数组MM的值显示出数据库里的值,是正确的
END;
FOR X:=0 TO J-1 DO
BEGIN
SHOWMESSAGE(MM[X]);
END;
为什么在X:=0 TO J-1这个循环中,看到的动态数组的值只有上面给它附值的最后一个值
其余的值都看不到了??急!!!
J:INTEGER
MM:ARRAY OF STRING;
以上是全局变量
procedure TForm1.Button2Click(Sender: TObject);
VAR
K,M,X:INTEGER;
begin
WITH ADOQUERY3 DO
BEGIN
CLOSE;
SQL.Clear;
SQL.Add('SELECT COUNT(*)CO1 FROM EMPLOYEE');
OPEN;
IF NOT ADOQUERY3.IsEmpty THEN
J:=FIELDBYNAME('CO1').AsInteger;
SETLENGTH(MM,J);
END;
ADOQUERY2.OPEN;
FOR K:=0 TO J-1 DO
BEGIN
WHILE NOT ADOQUERY2.Eof DO
BEGIN
MM[K]:=ADOQUERY2.FIELDBYNAME('EMP_NAME').AsString;
ADOQUERY2.NEXT;
END
//这里动态数组MM的值显示出数据库里的值,是正确的
END;
FOR X:=0 TO J-1 DO
BEGIN
SHOWMESSAGE(MM[X]);
END;
为什么在X:=0 TO J-1这个循环中,看到的动态数组的值只有上面给它附值的最后一个值
其余的值都看不到了??急!!!