線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1901
推到 Plurk!
推到 Facebook!

讀取Table裡面的某一個欄位

答題得分者是:couchpotato
jarkin
一般會員


發表:17
回覆:7
積分:4
註冊:2006-08-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-05-26 01:08:27 IP:59.115.xxx.xxx 訂閱
各位前輩,目前我知道要讀取所有的Table Name的程式語法是

ADOConnection1->GetTableNames(ComboBox1->Items,false);

那假如我要讀取某一個Table裡面的某一個欄位全部的值的話,請問

語法為何呢?
mypigbaby
高階會員


發表:11
回覆:168
積分:155
註冊:2006-07-20

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-05-26 08:20:40 IP:203.73.xxx.xxx 訂閱
豬寶寶不會c++
delphi的元件用法應該跟CBUILDER差不多..請你多諒解
在form上拉三個元件
.BUTTON1,LISTBOX1,LISTBOX2,ADOConnection1,ADOQUERY1

取得所有TABLE NAME 到LISTBOX1
[code delphi]
procedure TForm1.Button1Click(Sender: TObject);
var
SL: TStrings;
index: Integer;
begin
ad1.Connected:=true;
SL := TStringList.Create;
try
AD1.GetTableNames(SL, False);
for index := 0 to (SL.Count - 1) do begin
LB1.Items.Add(SL[index]);
end;
finally
SL.Free;
end;
end;
[/code]
當按LISTBOX1裡面的ITEM時,把該TABLE內的欄位名放到LISTBOX2

[code delphi]
procedure TForm1.LB1Click(Sender: TObject);
var i:integer;
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Text:='select * from ' LB1.Items[LB1.ItemIndex] ' where 1=2';
ADOQuery1.Open;
LB2.Clear;
for i :=0 to ADOQuery1.FieldCount-1 do
begin
LB2.Items.Add(adoquery1.Fields[i].FieldName);
end;

end;

[/code]




===================引 用 jarkin 文 章===================
各位前輩,目前我知道要讀取所有的Table Name的程式語法是

ADOConnection1->GetTableNames(ComboBox1->Items,false);

那假如我要讀取某一個Table裡面的某一個欄位全部的值的話,請問

語法為何呢?
couchpotato
初階會員


發表:1
回覆:16
積分:33
註冊:2008-05-09

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-05-26 16:19:34 IP:60.248.xxx.xxx 未訂閱
幫豬寶寶翻成BCB

[code cpp]
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TStringList *SL = new TStringList();

ADOConnection1->GetTableNames(SL,false);
for(int index=0; index<=(SL->Count-1); index )
{
ListBox1->Items->Add(SL->Strings[index]);
}

delete SL;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
for(int i=0; iCount; i )
{
ADOQuery1->SQL->Text = "select * from " ListBox1->Items->Strings[i];
ADOQuery1->Open();
}

for(int i=0; i<=(ADOQuery1->FieldCount-1); i )
{

ListBox2->Items->Add(ADOQuery1->Fields->Fields[i]->FieldName);
}
}
//---------------------------------------------------------------------------

[/code]
------
我是機器人,我不接受簡訊.
jarkin
一般會員


發表:17
回覆:7
積分:4
註冊:2006-08-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-05-26 20:54:16 IP:59.115.xxx.xxx 訂閱
呵呵~~自己搞定了~~我用While(Query->Eof)來讀取的~
謝謝大大們~~
系統時間:2024-03-29 10:20:14
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!