Строковое выражение должно оцениваться как число

Мне нужно написать определяемую пользователем функцию TSQL, которая будет принимать строку и возвращать число.

Я буду вызывать функцию вида dbo.EvaluateExpression('10*4.5*0.5')должен возвращать число 22.5

Может ли кто-нибудь помочь мне написать эту функцию EvaluateExpression.

В настоящее время я использую функцию CLR, которую мне следует избегать.

Edit1

Я знаю, что это можно сделать с помощью хранимой процедуры, но я хочу вызвать эту функцию в некоторых операторах, например: select 10* dbo.EvaluateExpression('10*4.5*0.5')

Также у меня есть около 400 000 таких формул для оценки.

Изменить2

Я знаю, что это можно сделать с помощью внутренней функции osql.exe, как описано здесь. Но из-за настроек разрешений я также не могу использовать это.

7
задан PraveenVenu 25 March 2012 в 07:20
поделиться