Основы Защиты Microsoft свободны, пока у Вас есть действительная лицензия Windows.
This is probably because public
has execute privilege on your function (it's the default).
Try this:
revoke execute on function getid(text,text) from public;
and recheck the result of has_function_privilege
.
For public
to not get this privilege on newly created functions, you may change the default with:
ALTER default privileges revoke execute on functions from public;