내가 제대로하고 있니?
돈을 돌려주는 기능이 있습니다 ...
CREATE FUNCTION functionName( @a_principal money, @a_from_date
datetime, @a_to_date datetime, @a_rate float ) RETURNS money AS BEGIN
DECLARE @v_dint money set @v_dint = computation_here
set @v_dint = round(@v_dint, 2)
RETURN @v_dint
END
GO
Grant execute on functionName to another_user
Go
이것이 iTVF로 변환 될 수 있는지 궁금합니다.
이 작업을 시도했지만 오류가 발생했습니다.
CREATE FUNCTION functionName ( @a_principal money, @a_from_date
datetime, @a_to_date datetime, @a_rate float )
RETURNS TABLE AS
RETURN SELECT returnMoney = computation_here
GO
Grant execute on functionName to another_user Go
오류:
메시지 4606, 수준 16, 상태 1, 줄 2 권한 부여 또는 취소 된 권한 EXECUTE가 개체와 호환되지 않습니다.
이 기능은 다음과 같이 사용됩니다 :
update table_name set interest = functionName(col1,col2...) where...
미리 감사드립니다!
이제 테이블을 리턴 할 때 GRANT 문은 GRANT EXECUTE가 아니라 GRANT SELECT 여야합니다.
—
Mike