Не удается подключиться к SQL Server для отладки хранимой процедуры SQLCLR

Я хочу отладить хранимую процедуру SQLCLR в SQL Server. Я безуспешно пытался отладить SP в сообществе VS2015 и в недавно установленных выпусках сообщества VS2017. Я почти уверен, что проблема заключается в подключении к SQL Server, но, поскольку я сделал все, что мог найти в Интернете, но безрезультатно.

При создании проекта базы данных в SQL Server Express LocalDB все работает нормально. Если я изменю строку подключения для использования моего SQL Server Developer Edition, я получу сообщение об ошибке. Я сделал следующее:

  1. Я создал новую базу данных. Я единственный пользователь сервера, и он находится на том же настольном компьютере, который я использую для Visual Studio.
  2. В Visual Studio я создал простой проект базы данных с простым методом отправки текста в выходной канал.

    [Microsoft.SqlServer.Server.SqlProcedure]
    public static void mytest ()
    {
        SqlContext.Pipe.Send("in clr Craig1");
    }
    
  3. Я отредактировал строку целевого подключения в свойствах проекта, чтобы подключиться к новой базе данных, и успешно получил подключение при нажатии кнопки подключения. В строке подключения для меня использовалась проверка подлинности Windows с тем же пользователем, что и владелец базы данных.
  4. Я построил и развернул решение и проверил обозреватель объектов SQL, чтобы убедиться, что SP был развернут. Это было.
  5. Я выбрал сервер и, щелкнув правой кнопкой мыши, выбрал «Разрешить отладку SQL/CLR». Я проверил его еще раз, чтобы убедиться, что он действительно установлен.
  6. Я выбрал хранимую процедуру и, щелкнув правой кнопкой мыши, выбрал "Процедура отладки...".
  7. Отобразился сценарий отладки. Я подошел к линии, чтобы выполнить SP, а затем нажал F11, чтобы вмешаться. В этот момент мне было показано следующее: введите здесь описание изображения
  8. Я нажал на вложение и получил следующую ошибку: введите здесь описание изображения

После этого процедура выполняется и выполняет функцию конвейера, но не позволяет выполнять присоединение и отладку.

Любые идеи о том, что я делаю неправильно? Спасибо, Крейг.


person SystemsGuy    schedule 14.03.2017    source источник
comment
это похоже на то, что может помочь: stackoverflow.com/questions/14180009/   -  person TheGameiswar    schedule 14.03.2017
comment
это содержит подробные шаги: blogs.technet.microsoft.com/beatrice_popa/2012/11/28/   -  person TheGameiswar    schedule 14.03.2017


Ответы (1)


Возможно, вам просто нужно запустить Visual Studio с помощью «Запуск от имени администратора». Я не верю, что мне нужно было делать это при работе с Windows 8, но сейчас я использую Windows 10, и мне определенно нужно «Запускать от имени администратора». Я предполагаю, что вы не можете иначе подключиться к чужому процессу (у меня есть версия Developer Edition, работающая с служебной учетной записью «SQL Server», но LocalDB всегда запускается как логин, который запустил его, обычно вы сами). Я не проверял, будет ли запуск Developer Edition от имени меня по-прежнему требовать «Запуск от имени администратора» или как запуск Developer Edition от имени «Локальная система» повлияет на это поведение.

person Solomon Rutzky    schedule 14.03.2017