Подключиться к базе данных на стороне сервера

По сути, я создал приложение MVC, следуя руководству по адресу http://www.asp.net/mvc/tutorials/getting-started-with-mvc3-part1-cs

Я могу загрузить его на сервер, и главная страница будет работать нормально... но запуск другой страницы, которая взаимодействует с базой данных, приводит к ошибке "Недопустимое имя объекта" dbo.Lyrics".

Теперь я могу подключиться к базе данных, которую я пытаюсь использовать (на сервере) удаленно, используя студию управления. Она называется Lyrics, а таблица — Default.Lyrics..

Я использую строку подключения: "connectionString="Data Source=74.86.97.85;Initial Catalog=Lyrics;User Id=Default;Password=****; ""

Итак, мой вопрос: почему мое приложение пытается использовать объект с именем «dbo.Lyrics», когда во всем моем приложении нет этого текста? Как я могу это решить?

Я знаю, что префикс dbo означает владельца базы данных... и это похоже на публичную таблицу... но, поскольку я указываю идентификатор пользователя, не должен ли он искать таблицы с моим идентификатором в качестве префикса?


person Ryan    schedule 04.03.2011    source источник


Ответы (1)


dbo в начале имени объекта — это схема. Схемы разделяют объекты в вашей базе данных. dbo — это просто схема по умолчанию.

Итак, если у вас есть объект с именем Lyrics, то это действительно dbo.Lyrics.

person John Saunders    schedule 04.03.2011
comment
Хм... значит, у меня есть объект с именем Lyrics, который недействителен... Есть ли что-нибудь еще, что помогло бы мне выяснить источник этой ошибки? - person Ryan; 04.03.2011
comment
@Ryan: Я бы предположил, что сообщение об ошибке говорит вам правду. Следующий шаг — выяснить, как это может быть правдой, если вы знаете, что объект существует в вашей базе данных. Я бы сказал, что его нет в базе данных, к которой пытается получить доступ ваш код, то есть ваш код пытается получить доступ к неправильной базе данных. Может старая версия? - person John Saunders; 04.03.2011