Da du vermutlich einen String aus irgendeinem Gerät einliest den mit explode zerlegst, bleiben die zerlegten Stücke immer noch Strings und müssen entsprechenden umgewandelt werden, um damit weiter arbeiten zu können.
Ne, nicht unbedingt, dieser Parameter sagt ja nur etwas darüber aus, wie Du auf die einzelnen Werte einer Row zugreifen kannst (also 0,1,2,3… oder über den Spaltennamen).
Die Werte kommen auf jeden Fall als String Werte zurück und müssen mitunter entsprechend umgewandelt werden (habe aber auch keine MySQL DB am Laufen und entnehme mein ausgeführtes Wissen nur der Docu …)!
Wenn Du „SetValueFloat“ verwendest, dann erwartet sich die Funktion aber zwingend den Datentype Float, „SetValue“ ist da etwas flexibler…