I только что впервые сделал функцию CLR и развернул ее в базе данных, и, прочитав немного о том, как она работает, подумайте, что это хороший вариант для программиста C #, такого как я.
Мой вопрос: если я нажму «control F5» и позволю VS выполнить магическое развертывание моих пользовательских функций и т. Д. В моей базе данных - что, если в этой базе данных есть текущие соединения, использующие предыдущую версию?
Я надеюсь, что это было бы без проблем.
Если это приведет к тому, что выполняющийся запрос возвратит ошибку, мне придется подождать, пока не будет использована подходящая среда разработки.
РЕДАКТИРОВАТЬ: Я решил использовать то, что я собираюсь использовать, в первую очередь, основываясь на отзывах, которые я последний раз писал с этим тегом.
Я не хочу поддерживать логику на двух языках, поэтому я собираюсь преобразовать следующее в C #:
CREATE FUNCTION [dbo].[tousd]
(@Currency char(3), @Amount money)
RETURNS money
AS
BEGIN
declare @Return money
if(@Currency = 'USD')
return @Amount * 1.0
else if(@Currency = 'EUR')
return (@Amount * 1.3065)
else if(@Currency = 'GBP')
return (@Amount * 1.5552)
else if(@Currency = 'CAD')
return (@Amount * 0.9789)
else if(@Currency = 'AUD')
return (@Amount * 0.9613)
else
return 0.0
return @Return
end
Заранее спасибо,
Аарон