Когда квалифицировать таблицу или имя просмотра с DBO в запросе?

StackOverflow https://stackoverflow.com/questions/4277371

  •  28-09-2019
  •  | 
  •  

Вопрос

У меня есть вид на SQL Server, давайте скажем my_view.

Когда я выполняю команду SELECT * FROM MY_VIEW Работает нормально. Однако, когда я выполняю это какSELECT * FROM dbo.MY_VIEW Я получаю * Неверное имя объекта 'mydb.dbo.my_view' *

Я подключен к SQL Server с использованием SA.

Что не так с этим? И когда мы должны использовать dbo.my_view и когда нет?

Обновлять: Название схемы на виду - DBO и когда я создал представление, а затем я подключился с SA.

Update2. Я обнаружил, что проблема была чувствительной к регистру с сопоставлением. Проблема была не из-за DBO. приставка. Это потому, что сопоставление базы данных было чувствительным к регистру, а имена таблиц в запросах были в неправильном случае.

Это было полезно?

Решение 3

Я обнаружил, что проблема была чувствительной к регистру с сопоставлением. Проблема была не из-за DBO. приставка. Это потому, что сопоставление базы данных было чувствительным к регистру, а имена таблиц в запросах были в неправильном случае.

Другие советы

Вы создали свои объекты под разным именем схемы, чем DBO? Это будет зависеть от имени схемы по умолчанию для вашей учетной записи пользователя, если вы не имеете ввесть его, когда вы создали представление. В SQL 2K5 и 2K8 я считаю, что поведение по умолчанию - создать новую схему для каждого пользователя vs., присвоение их к схеме «DBO».

Вы находитесь в главной базе данных. Вы создали представление в главной базе данных. Ваш настоящий запрос был SELECT * FROM MyDB.dbo.MY_VIEW. Отказ Попробуйте создать представление в базе данных MyDB.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top