powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / object_name для дугой базы
6 сообщений из 6, страница 1 из 1
object_name для дугой базы
    #39705999
Petrashkevich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте !!!

Делаю запрос, где одно из полей вычисляется так
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
SELECT 
AC.name, InPrimaryKey=CAST(ISNULL(cik.index_column_id, 0) AS bit),
IsForeignKey=CAST(case when F.parent_object_id is null then 0 else 1 end AS bit),
SystemType=ISNULL(Z.name, ''),
Length=CAST(CASE WHEN Z.name IN ('nchar', 'nvarchar') AND AC.max_length <> -1 THEN AC.max_length/2 ELSE AC.max_length END AS int),
NumericPrecision=CAST(AC.precision AS int),
NumericScale=CAST(AC.scale AS int),
AC.is_nullable,AC.is_computed,
IsSparse=CAST(AC.is_sparse AS bit),
IsColumnSet=CAST(AC.is_column_set AS bit),
ColDRIDefName=object_name(F.constraint_object_id)
from MyDatabase.sys.tables T
inner join MyDatabase.sys.all_columns AC on AC.object_id=T.object_id
left join MyDatabase.sys.indexes IK ON ik.object_id = AC.object_id and 1=ik.is_primary_key
left join MyDatabase.sys.index_columns CIK ON cik.index_id = ik.index_id and cik.column_id = AC.column_id and cik.object_id = AC.object_id and 0 = cik.is_included_column
left join MyDatabase.sys.types AS Z ON (Z.user_type_id = AC.system_type_id and Z.user_type_id = Z.system_type_id) or ((Z.system_type_id = AC.system_type_id) and (Z.user_type_id = AC.user_type_id) and (Z.is_user_defined = 0) and (Z.is_assembly_type = 1))
left join MyDatabase.sys.foreign_key_columns F on F.parent_column_id = AC.column_id and F.parent_object_id = AC.object_id
where (T.name='MyTableName' and SCHEMA_NAME(T.schema_id)='dbo')
order by AC.column_id ASC



При подключении к MyDatabase колонка выводит имена ключей, при подключении к master = NULL
Получается что функция object_name() контексто-зависимая
Пытаюсь написать MyDatabase.object_name() или MyDatabase.sys.object_name() - не получается.

Подскажите пожалуйста, как правильно обратиться к функции другой базы из master ?
...
Рейтинг: 0 / 0
object_name для дугой базы
    #39706000
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petrashkevich,

дык, 2-й параметр у OBJECT_NAME есть же

https://docs.microsoft.com/ru-ru/previous-versions/sql/sql-server-2014/ms186301(v=sql.120)]OBJECT_NAME ( object_id [, database_id ] )
...
Рейтинг: 0 / 0
object_name для дугой базы
    #39706001
AlanDenton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
OBJECT_NAME(object_id, DB_ID('database'))
...
Рейтинг: 0 / 0
object_name для дугой базы
    #39706015
iap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
courtPetrashkevich,

дык, 2-й параметр у OBJECT_NAME есть же

https://docs.microsoft.com/ru-ru/previous-versions/sql/sql-server-2014/ms186301(v=sql.120)]OBJECT_NAME ( object_id [, database_id ] ) Когда-то такого параметра не было.
Так что зависит от версии.
...
Рейтинг: 0 / 0
object_name для дугой базы
    #39706017
iap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iapcourtPetrashkevich,

дык, 2-й параметр у OBJECT_NAME есть же

https://docs.microsoft.com/ru-ru/previous-versions/sql/sql-server-2014/ms186301(v=sql.120)]OBJECT_NAME ( object_id [, database_id ] ) Когда-то такого параметра не было.
Так что зависит от версии.Хотя в этом случае есть такой параметр.
На эту мысль наводит схема sys, которой не было как раз тогда, когда и параметра не было.
...
Рейтинг: 0 / 0
object_name для дугой базы
    #39706395
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сделайте еще один джойн с sys.objects в нужной вам базе
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / object_name для дугой базы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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