我想获取某个表的某个字段的数据类型,该怎么做?
adoquery1.Fields.Fields[1].DataType行的通吗?
如何把adoquery1.Fields.Fields[1].DataType的返回结果通过showmessage显示出来,类型怎么转?
谢谢,在线等待!
adoquery1.Fields.Fields[1].DataType行的通吗?
如何把adoquery1.Fields.Fields[1].DataType的返回结果通过showmessage显示出来,类型怎么转?
谢谢,在线等待!
解决方案 »
- 为什么通用的行业软件公司发展得那么慢?
- stringgrid 中一列中每一单元格如何加入TDateTimePicker
- 发现Delphi2005的一个不知道是不是BUG!!!!!!!!
- [求救!]动态数组的下标用变量循环时遇到的问题
- 关于在Delphi应用程序中加载插件(重金悬赏)
- 為什麼我調用midstr函數時,編譯說未定義?
- 请高手指教迷津,如何自学Delphi....谢谢
- 关于ADOQuery问题,谢谢
- 请问如何在C++Builder\Delphi 中用sourcesafe
- 如何使用程序把记录一条条填充到一个空的DBGRID里面?
- 错误信息:Timeout expired
- TStoredProc返回的Dataset修改后未提交数据库!
type TFieldType = (ftUnknown, ftString, ftSmallint, ftInteger, ftWord, ftBoolean, ftFloat, ftCurrency, ftBCD, ftDate, ftTime, ftDateTime, ftBytes, ftVarBytes, ftAutoInc, ftBlob, ftMemo, ftGraphic, ftFmtMemo, ftParadoxOle, ftDBaseOle, ftTypedBinary, ftCursor, ftFixedChar, ftWideString, ftLargeint, ftADT, ftArray, ftReference, ftDataSet, ftOraBlob, ftOraClob, ftVariant, ftInterface, ftIDispatch, ftGuid, ftTimeStamp, ftFMTBcd);这么多数据类型你区分起来就麻烦了,除非你可以肯定只有其中的几种,那就一一比较好了
if adoquery1.Fields.Fields[1].DataType=ftstring then
showmessage('1');
Str : String;
case adoquery1.Fields.Fields[1].DataType of
ftBoolean :Str := 'ftBoolean '
ftBytes :Str := 'ftBoolean '
ftBlob :Str := 'ftBoolean '
ftMemo :Str := 'ftBoolean '
ftGraphic:Str := 'ftBoolean '
end;ShowMessage(Str)
请参考:
procedure TForm1.Button1Click(Sender: TObject);
var
i: Integer;
F: TFieldDef;
D: String;
begin
Table1.Active := True;
ListBox1.Items.Clear;
with Table1 do begin
for i := 0 to FieldDefs.Count - 1 do begin
F := FieldDefs.Items[i];
case F.DataType of
ftUnknown: D := 'Unknown';
ftString: D := 'String';
ftSmallint: D := 'SmallInt';
ftInteger: D := 'Integer';
ftWord: D := 'Word';
ftBoolean: D := 'Boolean';
ftFloat: D := 'Float';
ftCurrency: D := 'Currency';
ftBCD: D := 'BCD';
ftDate: D := 'Date';
ftTime: D := 'Time';
ftDateTime: D := 'DateTime';
ftBytes: D := 'Bytes';
ftVarBytes: D := '';
ftBlob: D := 'BLOB';
ftMemo: D := 'Memo';
ftGraphic: D := 'Graphic';
else
D := '';
end;
ListBox1.Items.Add(F.Name + ', ' + D);
end;
end;
Table1.Active := False;
end;