@override double getAsFloat() { final s = getAsString(); final f = double.tryParse(s); if (f == null) throw EDatabaseError(formatMsg(SNotAFloat, [s])); return f; }