Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом разделе описывается разрешение функций Entity SQL.
Несколько функций можно определить с тем же именем, если функции имеют уникальные сигнатуры.
В этом случае необходимо применить следующие критерии, чтобы определить, на какую функцию ссылается данное выражение. Эти критерии применяются в последовательности. Первым критерием, применимым только к одной функции, является разрешенная функция.
Номер параметра. Функция имеет одинаковое количество параметров, указанных в выражении.
Точное совпадение по типу. Каждый тип аргумента функции точно соответствует типу параметра или является литералом NULL.
Соответствует подтипу. Каждый тип аргумента функции точно совпадает или является подтипом типа параметра, или аргументом является литерал NULL. В случае, если несколько функций отличаются только в количестве необходимых преобразований подтипов, функция с наименьшим числом преобразований подтипов является разрешенной функцией.
Соответствие по подтипу или повышению типа. Каждый тип аргумента функции точно совпадает, является подтипом или может быть повышен до типа параметра, или аргумент является литералом NULL. Опять же, если несколько функций отличаются только в количестве преобразования и повышения подтипов, функция с наименьшим числом преобразований подтипов и рекламных кампаний является разрешенной функцией.
Если ни один из этих критериев не приводит к выбору одной функции, выражение вызова функции является неоднозначным.
Даже если одна функция может быть извлечена с помощью этих правил, аргументы по-прежнему могут не соответствовать параметрам. В этом случае возникает ошибка.
Для определяемых пользователем функций определение встроенной функции запроса имеет приоритет, даже если определяемая моделью функция имеет сигнатуру, которая лучше подходит для определяемой пользователем функции.