Einzelnen Beitrag anzeigen

toyoman

Registriert seit: 2. Jun 2003
323 Beiträge
 
Delphi 2010 Enterprise
 
#1

Daten Feld Typ rausfinden

  Alt 25. Jun 2008, 14:13
Datenbank: SQL Server • Version: 2005 • Zugriff über: ADO
Hallo Leute

Um in einem Filter-Fenster die Datentypen versch. durchsuchbarer Felder zu wissen habe ich folgende Funktion:

Delphi-Quellcode:
function getAdoFieldDataTyp(query: TAdoQuery; feldtext: String): TFieldType;
begin
      result:=query.Fields.FieldByName(feldtext).DataType;
end;
Im Programm selber frag ich dann wie folgt ab:

Delphi-Quellcode:
// Numerisch?
if (getadoFieldDataTyp(datamodule2005.ADOQuery1, edfeld.text) = ftInteger) or ....
Bis anhin hat das ganz gut funktioniert. Nun greife ich auf eine Tabelle zu welche Datentypen Integer und aber auch NVARCHAR hat. Diese werden nun scheinbar nicht mehr korrekt erkannt, weil er gibt immer numerisch zurück.

Datümer frage ich über getadofielddatatyp.... = ftdatetime or ftdate ab.
Text Felder über ....= ftString
Memo Felder über ....= ftMemo

Was muss ich für NVARCHAR Felder prüfen? Bei einem alten Projekt wo es funktioniert waren es einfache VARCHAR Definitionen....

Danke und Gruss aus der heissen Schweiz
  Mit Zitat antworten Zitat