很多時候,當我們查詢數據庫,我們只需要使用VARCHAR一列。 所以我做了一個很好的功能,查詢數據庫,並把結果放在一個StringList的:數據庫變結構導致
function Getdatatostringlist(sqlcomponent, sqlquery: string): TStringlist;
我正在尋找現在基本上是相同的功能,但用在這裏你不要多列結果事先知道數據是什麼類型,是varchar,int,datetime。
什麼樣的數據結構的將是很好的在這裏使用。
我想這樣做的原因是,我儘量不開放數據集工作。我更喜歡將所有結果提取到臨時結構中,關閉數據集並處理結果。
有關使用內存的數據集Kobiks答覆後,我想出了下面,它的快速放在一起測試的概念:
procedure TForm1.Button2Click(Sender: TObject);
var
MyDataSet : TAdoDataSet;
begin
MyDataSet := GetDataToDataSet('SELECT naam FROM user WHERE userid = 1', ADOConnection1);
try
Form1.Caption := MyDataSet.FieldByName('naam').AsString;
finally
MyDataSet.free;
end;
end;
function TForm1.GetDataToDataSet(sSql: string; AdoConnection: TADOConnection): TAdoDataSet;
begin
Result := TAdoDataSet.Create(nil);
Result.LockType := ltBatchOptimistic;
Result.Connection := AdoConnection;
Result.CommandText := sSql;
Result.Open;
Result.Connection := nil;
end;
我覺得這是值得的基礎上。
我認爲這是我需要研究的內容。 – 2013-03-22 15:18:15