powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / функция OBJECT_ID
13 сообщений из 13, страница 1 из 1
функция OBJECT_ID
    #39667824
Лёхан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MS SQL Server 2000. При проверке существования возвращающей табличное значение функции 'fun_multi':
IF OBJECT_ID('fun_multi', 'TF') IS NOT NULL
выдается сообщение:
Invalid parameter 2 specified for object_id.
Хотя:
IF EXISTS (SELECT * FROM sysobjects WHERE (name = 'fun_multi') AND (xtype = 'TF') AND (type = 'TF'))

отрабатывается нормально!
Да и в MS SQL Server 2012 проблем нет. В чем проблема при использовании OBJECT_ID(..., ...)?
...
Рейтинг: 0 / 0
функция OBJECT_ID
    #39667826
tunknown
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛёханIF OBJECT_ID('fun_multi', 'TF') IS NOT NULL
...
sysobjectsЕсли я правильно понял вопрос, то второй параметр OBJECT_ID не всегда соответствует sysobjects.xtype. Надо подбирать другое значение(поискать в ***\***.MSSQLSERVER\MSSQL\Install\*.sql) или оставлять только первый параметр.
...
Рейтинг: 0 / 0
функция OBJECT_ID
    #39667854
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛёханMS SQL Server 2000.
SQL Server 2012

В чем проблема при использовании OBJECT_ID(..., ...)?

Дык, MS SQL Server 2000 не поддерживал второй параметр.
...
Рейтинг: 0 / 0
функция OBJECT_ID
    #39668115
Лёхан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
aleks222! Благодарю.
Т.е. имена всех объектов д.б. уникальны? Ну ладны. Тема закрыта.
...
Рейтинг: 0 / 0
функция OBJECT_ID
    #39668118
Лёхан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
aleks222
Хотя...
А какого Х срабатывает
IF OBJECT_ID('proc_a_e_users_', 'P') IS NOT NULL
???
...
Рейтинг: 0 / 0
функция OBJECT_ID
    #39668174
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лёханaleks222
Хотя...
А какого Х срабатывает
IF OBJECT_ID('proc_a_e_users_', 'P') IS NOT NULL
???Официально до 2005 OBJECT_ID был с одним аргументом, а второй был недокументирован, видимо, он может принимать не все значения...
...
Рейтинг: 0 / 0
функция OBJECT_ID
    #39668194
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лёхан,

потому что OBJECT_ID смотрит на sys.objects, а вы смотрите на sys.sysobjetcs и это разные представления на разные объекты и TF там только с 2012
...
Рейтинг: 0 / 0
функция OBJECT_ID
    #39669215
Лёхан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alexeyvg, благодарю!
Видимо в 2000 так и есть. В принципе, не очень актуально.
Просто в РАЗОВОМ заказе сделал проверку в 2000 по аналогии с 2012
и столкнулся с этой фишкой. Захотелось разобраться.
Скорее всего, дело во 2-ом аргументе (принимаемых им значениях). Ну да ладны.
...
Рейтинг: 0 / 0
функция OBJECT_ID
    #39669246
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛёханПросто в РАЗОВОМ заказе сделал проверку в 2000 по аналогии с 2012
и столкнулся с этой фишкойЯ, честно говоря, не понимаю, откуда вдруг взялась мода использовать второй аргумент OBJECT_ID. Я могу представить, когда это необходимо, но это уж совсем навороченные случаи.
...
Рейтинг: 0 / 0
функция OBJECT_ID
    #39669654
cossack5
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvgЛёханПросто в РАЗОВОМ заказе сделал проверку в 2000 по аналогии с 2012
и столкнулся с этой фишкойЯ, честно говоря, не понимаю, откуда вдруг взялась мода использовать второй аргумент OBJECT_ID. Я могу представить, когда это необходимо, но это уж совсем навороченные случаи.
Это в коде системных хранимок вроде встречается со вторым аргументом.
...
Рейтинг: 0 / 0
функция OBJECT_ID
    #39669831
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cossack5alexeyvgпропущено...
Я, честно говоря, не понимаю, откуда вдруг взялась мода использовать второй аргумент OBJECT_ID. Я могу представить, когда это необходимо, но это уж совсем навороченные случаи.
Это в коде системных хранимок вроде встречается со вторым аргументом.И что, системные процедуры стали выдавать ошибки при выполнении? :-) Встречается, и бог с ними.
Не надо слепо копировать кривой код из системных процедур.
...
Рейтинг: 0 / 0
функция OBJECT_ID
    #39669882
iap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvgЛёханПросто в РАЗОВОМ заказе сделал проверку в 2000 по аналогии с 2012
и столкнулся с этой фишкойЯ, честно говоря, не понимаю, откуда вдруг взялась мода использовать второй аргумент OBJECT_ID. Я могу представить, когда это необходимо, но это уж совсем навороченные случаи.Хочу обратиться к таблице, но такой нет. Зато есть процедура с таким именем.
Без второго параметра в этом случае как-то не так удобно.
...
Рейтинг: 0 / 0
функция OBJECT_ID
    #39669904
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iapalexeyvgпропущено...
Я, честно говоря, не понимаю, откуда вдруг взялась мода использовать второй аргумент OBJECT_ID. Я могу представить, когда это необходимо, но это уж совсем навороченные случаи.Хочу обратиться к таблице, но такой нет. Зато есть процедура с таким именем.
Без второго параметра в этом случае как-то не так удобно.Вот про это я и говорю "могу представить" :-)
То есть некая навороченная динамическая система с собственными метаданными и т.д.
Чтож, если такая система, можно и запрос к системным представлениям сделать, ведь не нерешаемая задача.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / функция OBJECT_ID
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]