Ver Mensaje Individual
  #2  
Antiguo 08-02-2009
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.610
Reputación: 32
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
¡Hola!

Cita:
Empezado por MaMu Ver Mensaje
Quiero detectar el tipo de campo de una tabla de mySQL, pero esta funcion que hice no me funciona:...Cuales son los FieldDef de mySQL ???
No dices por qué no te funciona. Tampoco está claro por qué quieres que la función devuelva un String. Pero me he tomado la libertad de modificarla, para usar la propiedad Fields en lugar de FieldDefs, además de que sirva con cualquier conjunto de datos (no sólo TZQuery ):
Código Delphi [-]
Uses
  TypInfo;

Function GetTipoCampo (DataSet :TDataSet; Index :Integer) :String;
Begin
  Result := GetEnumName (TypeInfo (TFieldType),
    Integer (DataSet.Fields [Index].DataType));
End;
Claro, funcionará siempre y cuando el conjunto de datos ya tenga objetos campo (TField) en su interior.

La propiedad FieldDefs viene heredada desde la clase TDataSet para todos los componentes derivados (conjuntos de datos como TZQuery, TADOTable, TIBDataSet, etc.). Depende de cómo se use el conjunto de datos, la propiedad FieldDefs podría no estar inicializada.

Espero te sirva.

Al González.
Responder Con Cita