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

DELPHI取資料欄位的長度和型態

 
soon1234
一般會員


發表:3
回覆:8
積分:2
註冊:2006-08-24

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-08-24 15:50:20 IP:59.120.xxx.xxx 訂閱

請問各位先進
最近開始學DELPHI,想要對資料庫作處理,
如果要擷取資料欄位的長度和型態,不知要如何做
因為我用下面的方法,欄位若是字元能秀出來位數,但是如果是數字欄位位數都是0,請幫忙解答!謝謝!
For i := 0 to tb.fields.count - 1 do
cb.items.add(tb.fields.FieldName '-' IntToStr(tb.fieldByName(tb.Fields.FieldName).size));
字元OK
數字=0
--是否可以有位數及小數資訊?

pedro
尊榮會員


發表:152
回覆:1187
積分:892
註冊:2002-06-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2006-08-25 11:49:51 IP:60.248.xxx.xxx 未訂閱

由DataType去判斷欄位資料別

procedure TForm1.Button1Click(Sender: TObject);
var
i:Integer;
begin
For i := 0 to tb.fields.count - 1 do
begin
case tb.Fields[i].DataType of
ftString:
Memo1.Lines.add(tb.fields[i].FieldName '-' IntToStr(tb.fieldByName(tb.Fields[i].FieldName).size));
ftInteger:
Memo1.Lines.add(tb.fields[i].FieldName '-' IntToStr(SizeOf(Integer)));
ftSmallInt:
Memo1.Lines.add(tb.fields[i].FieldName '-' IntToStr(SizeOf(SmallInt)));
ftFloat:
Memo1.Lines.add(tb.fields[i].FieldName '-小數位數' IntToStr(TFloatField(tb.fieldByName(tb.Fields[i].FullName)).Precision));
end;
end;
end;

soon1234
一般會員


發表:3
回覆:8
積分:2
註冊:2006-08-24

發送簡訊給我
#3 引用回覆 回覆 發表時間:2006-08-25 12:57:00 IP:59.120.xxx.xxx 訂閱

感謝!

對於小數部分,在下是因為要取得SERVER端定義的位數,來設定CLIENT端的長度

所以麻煩您在指導一下,

例如:

SERVER

欄位 pic 999999V99 為六位整數兩位小數

謝謝!

soon1234
一般會員


發表:3
回覆:8
積分:2
註冊:2006-08-24

發送簡訊給我
#4 引用回覆 回覆 發表時間:2006-08-25 17:42:32 IP:59.120.xxx.xxx 訂閱

感謝!

對於小數部分,在下是因為要取得SERVER端定義的位數,來設定CLIENT端的長度

所以麻煩您在指導一下,

例如:

SERVER

欄位 pic 999999V99 為六位整數兩位小數

謝謝!

系統時間:2024-05-06 2:21:28
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!