Sie können Varchars in Floats umwandeln, und Sie können dies auf die von Ihnen angegebene Weise tun. Ihr varchar darf kein numerischer Wert sein. Da muss noch was drin sein. Sie können IsNumeric verwenden, um es zu testen. Siehe dies:
declare @thing varchar(100)
select @thing = '122.332'
--This returns 1 since it is numeric.
select isnumeric(@thing)
--This converts just fine.
select convert(float,@thing)
select @thing = '122.332.'
--This returns 0 since it is not numeric.
select isnumeric(@thing)
--This convert throws.
select convert(float,@thing)