Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Хранимые процедуры можно предоставлять как конечные точки REST в построителе API данных (DAB). Этот подход полезен для сценариев, которые включают пользовательскую логику, фильтрацию, проверку или вычисляемые результаты, не обрабатываемые простыми таблицами или представлениями.
Конфигурация
Чтобы открыть доступ к хранимой процедуре, выполните приведенные ниже действия.
- Установите
source.typeна"stored-procedure" - Задайте
source.objectполное имя процедуры - При необходимости определите необязательные
parametersсо значениями по умолчанию. - Задать
rest.methods(например,"GET","POST") илиrest: false - Предоставление разрешения с помощью
"execute"действия
Пример интерфейса командной строки
dab add GetCowrittenBooksByAuthor \
--source dbo.stp_get_all_cowritten_books_by_author \
--source.type "stored-procedure" \
--parameters.name "searchType" \
--parameters.required "false" \
--parameters.default "default-value" \
--parameters.description "The type of search to perform" \
--permissions "anonymous:execute" \
--rest.methods "get"
Пример конфигурации
"GetCowrittenBooksByAuthor": {
"source": {
"type": "stored-procedure",
"object": "dbo.stp_get_all_cowritten_books_by_author",
"parameters": [
{
"name": "searchType",
"required": false,
"default": "default-value",
"description": "The type of search to perform"
}
]
},
"rest": {
"methods": [ "GET" ]
},
"permissions": [
{
"role": "anonymous",
"actions": [ "execute" ]
}
]
}
Предупреждение
Формат словаря для parameters (например, { "searchType": "default-value" }) устарел в DAB 2.0. Используйте формат массива, показанный в предыдущем примере. Старый формат по-прежнему принимается для обратной совместимости.
Подсказка
Дополнительные сведения о формате массива параметров см. в исходной конфигурации.
Поведение REST
- Поддерживает только
GETиPOST -
POSTпо умолчанию, еслиmethodsопущено - Отправляет параметры с помощью строки запроса
GET - Отправляет параметры в теле JSON с помощью
POST - Отключает REST для хранимой процедуры, если
"rest": falseзадано значение
Примеры запросов
GET /api/GetCowrittenBooksByAuthor?author=asimov
POST /api/GetCowrittenBooksByAuthor
{
"author": "asimov"
}
Ограничения
- Возвращается только первый результирующий набор .
- Разбиение на страницы, фильтрация и упорядочение не поддерживаются
- Связи не поддерживаются
- Требуется метаданные из
sys.dm_exec_describe_first_result_set - Не удается вернуть один элемент по ключу
- Авторизация на уровне параметров отсутствует