Не удалось вызвать хранимую процедуру из Power BI

#sql-server #powerbi

#sql-server #powerbi

Вопрос:

Я пытаюсь вызвать хранимую процедуру в Power BI desktop

 USE [Adventure]

DECLARE @return_value int

EXEC    @return_value = [dbo].[sp_powerbi]

SELECT  'Return Value' = @return_value
 

Но я получаю следующую ошибку:

Подробности: «Microsoft SQL: разрешение на выполнение было отклонено для объекта’sp_powerbi’, базы данных ‘Adventure’, схемы’dbo'».

Для меня это странно, потому что я уже мог использовать процедуру, сохраненную в другом отчете, и я не получил эту ошибку. Должен ли я выполнять некоторые настройки в Power BI?

Где я могу проверить разрешения, которые упоминает Power BI? Или где я могу проверить разрешения в Power BI или SQL Server?

Комментарии:

1. Ошибка сообщает вам все, что вам нужно; пользователь SQL, который использует Power BI, не имеет разрешения на выполнение этой процедуры. Тот факт, что может быть выполнена какая-либо другая процедура, не имеет значения. Быстрый поиск в Google покажет вам, как предоставить разрешения на выполнение SP, если у вас нет администратора базы данных, который сделает это за вас.

2. Привет, @emm, это устранило вашу ошибку?

3. @Nandan Удалите соединения, которые у меня были с sql server, и я снова вызвал процедуру хранения, и она сработала

Ответ №1:

Вам необходимо выполнить приведенную ниже команду в базе данных SQL, которая является вашим источником:

 GRANT EXECUTE
ON SCHEMA::[dbo] TO [< User >];
 

Это не проблема с PowerBI, а проблема с доступом на стороне базы данных.