Неожиданное сообщение об ошибке от aspnet_regsql - PullRequest
5 голосов
/ 03 февраля 2009

Я пытаюсь использовать утилиту aspnet___regsql для установки всех таблиц членства в базе данных на моем локальном экземпляре SQL Express 2008. Я могу без проблем подключиться в Management Studio, но когда я пытаюсь перечислить базы данных в интерфейсе aspnet_regsql, я получаю сообщение об ошибке:

Failed to query a list of database names from the SQL Server.
Invalid object name 'sysdatabases'

Что я делаю не так? Как мне это исправить?

(Пожалуйста, скажите, что есть более плавный способ, чем переустановить устройство ...: P)

Ответы [ 5 ]

10 голосов
/ 03 февраля 2009

Я решил проблему, обойдя графический интерфейс и выполнив то же действие непосредственно в командной строке, с флагами, указывающими все параметры. Они должны выглядеть так:

Подключение с использованием аутентификации SQL

C:\>Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_regsql.exe -S myHostingServer -A all -d myDatabase -U myUserID -P myPassword

Подключение с использованием аутентификации Windows

C:\>Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_regsql.exe -S myHostingServer -A all -d myDatabase -E

Разница в конце строк, где SQL Auth. имеет -U myUsername -P myPassword при аутентификации Windows. имеет -E (который указывает на надежное соединение).

2 голосов
/ 19 октября 2011

Если вы хотите использовать графический интерфейс, вам нужно убедиться, что для пользователя, в котором вы вошли в систему, значение db в SQL по умолчанию установлено на « master », чтобы оно могло напрямую подключаться к таблице sysdatabases. .

1 голос
/ 21 мая 2013

Убедитесь, что в Диспетчер конфигурации SQL Server -> Конфигурация сети SQL Server -> Протоколы для YOUR_SQL_SERVER_INSTANCE_NAME включен TCP/IP. NB. для применения этого изменения необходимо перезапустить YOUR_SQL_SERVER_INSTANCE_NAME

0 голосов
/ 14 февраля 2010

Эта проблема обычно вызвана тем, что вместо имени вашего экземпляра SQL-сервера вместо «Server» указывается имя вашего компьютера. Это сложно понять, потому что они автоматически заполняют текстовое поле для имени вашего компьютера, что необходимо, но не полностью. Это может привести вас к мысли, что «Сервер» относится к самому компьютеру, когда он действительно означает экземпляр SQL-сервера. Если вы подключаетесь к локальному компьютеру, вы обычно можете добавить к его записи имя вашего экземпляра SQL, и все будет работать так, как задумано

IE LOCALHOST должен стать LOCALHOST \ SQLEXPRESS или как вы его называете \ sqlserver

0 голосов
/ 06 августа 2009

По умолчанию в Vista текущий пользователь на компьютере не является членом SysAdmin в SQL Server 2005/2008.

Итак, вот фокус.

1-Open Sql Server Конфигурация поверхности сервера из C: \ Program Files \ Microsoft SQL Server 2005/2008.

2 - Когда появится всплывающее окно, нажмите «Добавить нового администратора».

    -on top right make sure that User to provision=Username of the pc
    -on your left (Available Privileges) select Member of SQL Server SysAdmin and click on the right arrow (>)
    -click ok and you should be ready to go.

Меня зовут Тэлли Оуро, разработчик в Роли, Северная Каролина Блог: http://talleyblogs.blogspot.com/ E-mail: johnstalley@live.com

...