Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   conocer el tipo de una variable (https://www.clubdelphi.com/foros/showthread.php?t=44109)

ercrizeporta 29-05-2007 01:52:19

conocer el tipo de una variable
 
hola estoy leyendo datos de una base de datos y me gustaría saber si hay alguna forma de poder saber si un dato es de un determinado tipo o no. En concreto necesito saber si es un float o no...
la función que busco sería algo así:

function isfloat(variable):boolean;

pero no tengo ni idea de si existe o no. muchas gracias!!

ContraVeneno 29-05-2007 02:00:40

No mencionas que base de datos estas utilizando pero en SQL Server:

Código SQL [-]
SELECT T.Name, T.ID, C.Name, C.colID, S.Name, C.Length
FROM sysObjects T
join syscolumns C on T.ID=C.ID
join systypes S on C.Xtype=S.Xtype
WHERE T.xtype='U'
AND T.name = 'TuTabla'
And C.Name = 'TuCampo'
Order by C.colID

El campo "Name" de SysTypes (S.Name) es el que estas buscando. Todo viene perfectamente explicado en la ayuda, solo presiona F1 y listo.

Aunque sería mejor que comparas el campo "XType" o el mismo campo "Type" en lugar de "Name", ya que comparar datos númericos es mejor que comparar cadenas.

ercrizeporta 29-05-2007 02:22:14

no, no era eso precisamente a lo que me refería...necesito saber si hay una función que me diga si una variable es de un tipo determinado o no.

egostar 29-05-2007 02:51:20

Entonces es una variable o un campo de la base de datos.

Si es un campo de una tabla podrias usar esto, aunque no dices que base de datos usas.

Código Delphi [-]
if Table1.Fields[j].DataType = ftFloat then begin
   ShowMessage('Es Float');
end
else begin
         ShowMessage('NO es Float');
end;

Salud OS.


La franja horaria es GMT +2. Ahora son las 08:46:54.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi