¡Hola!
Cita:
Empezado por MaMu
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.