Я заметил странное поведение в SQL Server Express 2008, и я пытался выяснить причину.При создании новой базы данных вы можете получить доступ к представлению sys.sysobjects без указания идентификатора схемы следующим образом:
SELECT * FROM [sysobjects]
Вы можете сделать это, даже если ваша схема по умолчанию отличается от'SYS'.Насколько я понимаю, схемы заключаются в том, что ядро базы данных сначала будет искать объект в схеме по умолчанию, а затем - в схеме dbo, если у пользователя есть разрешение, а затем перестанет искать.Кроме того, я знаю, что к представлению sys.sysobjects можно получить доступ, потому что публичной роли по умолчанию предоставляется разрешение на выбор.Я просто не знаю, почему к нему можно получить доступ без имени схемы.
Продолжает ли движок искать объект после проверки схемы 'dbo', является ли представление sysobjects особым случаем, или это что-тоеще целиком?