В Microsoft SQL Server 2014 (SP2-CU1) (KB3178925) - 12.0.5511.0 (X64) Aug 19 2016 14:32:30 Copyright (с) Microsoft Corporation Enterprise Edition (64-разрядная версия) на Windows, NT 6.1 (Build 7601: Service Pack 1) (гипервизор)Неверное возвращаемое значение OBJECT_ID?
с sp_updatestats на самом деле не существует, запрос:
SELECT OBJECT_ID('sp_UpdateStats')
возвращает значение: -838816646
и
select * FROM sys.objects WHERE name='sp_UpdateStats'
возвращение 0 линия ...
Как это может быть? Ошибка в функции OBJECT_ID?
EDIT
это хорошо знать, что ID -838816646 является пришедшим из sys.sysobjects или sys.system_objects, но тогда вопрос более точно есть:
- почему процедура появится в sys.sysobjects и sys.system_objects, а не в sys.objects, который должен быть новым представлением, которое мы должны использовать?
Из [fine manual] (https://msdn.microsoft.com/library/ms190324): «Существует версия этого представления с той же схемой, называемой« sys.system_objects », которая показывает системные объекты. Существует еще один вид, называемый 'sys.all_objects', который показывает как системные, так и пользовательские объекты. Все три представления каталога имеют одинаковую структуру». 'sp_updatestats' - системный объект. –
У вас, похоже, создается впечатление, что 'sp_updatestats' не существует на вашем компьютере. Оно делает. Вы не могли отказаться от него, потому что невозможно удалить объекты системы, запретив использование ужасной черной магии. –
«Почему процедура появляется в sys.sysobjects и sys.system_objects, а не в sys.objects, которая должна быть новым представлением, которое мы должны использовать?» Потому что Microsoft разработала его таким образом? Вы почти никогда не должны использовать запрос для системных объектов в первую очередь, поэтому они не помещали его в 'sys.objects', но вместо этого разделили представление на' sys.objects' только для пользовательских объектов и 'sys.system_objects' для системных объектов с 'sys.all_objects', если по какой-то причине вы действительно хотите * все * объекты. Это правда, что Books Online пренебрегает упоминанием об этом непосредственно под «картографическими системными таблицами». –