今天上班刚坐下来的时候,脑子里还是空白的,看了下网页然后就打开俺桌面上那一堆的开发工具开始写那套还未完成的OA。过了阵子,有同事跑来说C/S单用ADOQUERY没想到啥好办法把返回的所有数据和字段名都取到MEMO控件中,于是乎俺就跑到网上瞎忙活了一阵子,看了看人家写的,好像自己有点不习惯,就修改了一下,用的是最笨的办法,但是还是比较实用,需要的用的朋友直接COPY过去就OK了。
{ ADOSelectFieldsString and ADOSelectFieldsName Power by Perl - Build 20060320 }
procedure TForm1.ADOSelectFieldsString(MM: TMemo ; SQLStr: String; Found: Boolean);
Var
SQLString: String;
i: Integer;
Begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
SQLString := Edit3.Text;
ADOQuery1.SQL.Text := SQLString;
ADOQuery1.Open;
If Found Then Begin
If ADOQuery1.RecordCount > 0 Then Begin
While Not ADOQuery1.Eof Do
Begin
For i := 0 To ADOQuery1.Fields.Count - 1 Do
Begin
MM.Lines.Add(ADOQuery1.Fields[i].AsString + '>');
{当found为True时在每行后面加一个'>'号,方便使用于传输或者其它地方的时候进行分解}
End;
ADOQuery1.Next;
End;
End;
End Else If Found = False Then Begin
If ADOQuery1.RecordCount > 0 Then Begin
While Not ADOQuery1.Eof Do
Begin
For i := 0 To ADOQuery1.Fields.Count - 1 Do
Begin
MM.Lines.Add(ADOQuery1.Fields[i].AsString + '>');
End;
ADOQuery1.Next;
End;
End;
End;
End;
procedure ADOSelectFieldsName(MM: TMemo ; SQLStr: String; Found: Boolean);
Var
SQLString: String;
i: Integer;
Begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
SQLString := Edit3.Text;
ADOQuery1.SQL.Text := SQLString;
ADOQuery1.Open;
If Found Then Begin
If ADOQuery1.RecordCount > 0 Then Begin
For i := 0 To ADOQuery1.Fields.Count - 1 Do
Begin
MM.Lines.Add(ADOQuery1.Fields[i].FieldName + '>');
{当found为True时在每行后面加一个'>'号,方便使用于传输或者其它地方的时候进行分解}
End;
End;
End Else If Found = False Then Begin
If ADOQuery1.RecordCount > 0 Then Begin
For i := 0 To ADOQuery1.Fields.Count - 1 Do
Begin
MM.Lines.Add(ADOQuery1.Fields[i].FieldName);
End;
End;
End;
End;
{ ------------------------------------------------------------- end -----------------------------------------------------------------}
end;
{ ADOSelectFieldsString and ADOSelectFieldsName Power by Perl - Build 20060320 }
procedure TForm1.ADOSelectFieldsString(MM: TMemo ; SQLStr: String; Found: Boolean);
Var
SQLString: String;
i: Integer;
Begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
SQLString := Edit3.Text;
ADOQuery1.SQL.Text := SQLString;
ADOQuery1.Open;
If Found Then Begin
If ADOQuery1.RecordCount > 0 Then Begin
While Not ADOQuery1.Eof Do
Begin
For i := 0 To ADOQuery1.Fields.Count - 1 Do
Begin
MM.Lines.Add(ADOQuery1.Fields[i].AsString + '>');
{当found为True时在每行后面加一个'>'号,方便使用于传输或者其它地方的时候进行分解}
End;
ADOQuery1.Next;
End;
End;
End Else If Found = False Then Begin
If ADOQuery1.RecordCount > 0 Then Begin
While Not ADOQuery1.Eof Do
Begin
For i := 0 To ADOQuery1.Fields.Count - 1 Do
Begin
MM.Lines.Add(ADOQuery1.Fields[i].AsString + '>');
End;
ADOQuery1.Next;
End;
End;
End;
End;
procedure ADOSelectFieldsName(MM: TMemo ; SQLStr: String; Found: Boolean);
Var
SQLString: String;
i: Integer;
Begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
SQLString := Edit3.Text;
ADOQuery1.SQL.Text := SQLString;
ADOQuery1.Open;
If Found Then Begin
If ADOQuery1.RecordCount > 0 Then Begin
For i := 0 To ADOQuery1.Fields.Count - 1 Do
Begin
MM.Lines.Add(ADOQuery1.Fields[i].FieldName + '>');
{当found为True时在每行后面加一个'>'号,方便使用于传输或者其它地方的时候进行分解}
End;
End;
End Else If Found = False Then Begin
If ADOQuery1.RecordCount > 0 Then Begin
For i := 0 To ADOQuery1.Fields.Count - 1 Do
Begin
MM.Lines.Add(ADOQuery1.Fields[i].FieldName);
End;
End;
End;
End;
{ ------------------------------------------------------------- end -----------------------------------------------------------------}
end;