CftClub.ru
Клуб специалистов ЦФТ-Банк

Отличие синтаксиса в доступе к атрибутам

 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих
Предыдущая тема :: Следующая тема  
Автор Сообщение
alex.filatov
Участник


Вступление в Клуб: 09.07.2021
СообщениеПт Окт 08, 2021 10:33   Отличие синтаксиса в доступе к атрибутам Ответить с цитатой
Полезность: Нет оценки
Добрый день!
Подскажите в чем разница между следующими вариантами доступа к атрибутам?
Код:
a.b,
[a].[b],
[a] -> [b]


p.s. Последний вариант - через стрелку
Volod
Эксперт


Вступление в Клуб: 19.09.2007
СообщениеПт Окт 08, 2021 14:30   Re: Отличие синтаксиса в доступе к атрибутам Ответить с цитатой
Полезность: Нет оценки
Цитата:
Добрый день!
Подскажите в чем разница между следующими вариантами доступа к атрибутам?
a.b,
[a].[b],
[a]->[b]


Нет большой разницы, но обращение к ревизиту рекомендуется заключать в [].
Это [a]->[b] обычно используется в таком виде [a]->(c) [b], где [b] - реквизит дочерней таблицы [с]
alex.filatov
Участник


Вступление в Клуб: 09.07.2021
СообщениеПт Окт 08, 2021 19:36   Re: Отличие синтаксиса в доступе к атрибутам Ответить с цитатой
Полезность: Нет оценки
Цитата:

Это [a]->[b] обычно используется в таком виде [a]->(c) [b], где [b] - реквизит дочерней таблицы [с]


А если не использовать стрелку, ограничиться точечной нотацией, что может пойти не так?
Volod
Эксперт


Вступление в Клуб: 19.09.2007
СообщениеПт Окт 08, 2021 19:46    Ответить с цитатой
Полезность: Нет оценки
На практике всегда через точку
Эмиралька
Эксперт


Вступление в Клуб: 09.11.2015
СообщениеПт Окт 08, 2021 21:56    Ответить с цитатой
Полезность: 1
Цитата:
На практике всегда через точку

нет.

select x ( x.[ссылка].[поле] ) раскрывается как outer join

where x.[ссылка].[поле] = значение - раскрывается как inner join

where x.[ссылка]-> ( true )[поле] = значение - раскрывается как outer join

select x ( x.[ссылка] -> ( false )[поле] ) раскрывается как inner join

ЗS:
Между a.b и [a].[b] разницы нет. Просто удобнее.
А потом, вот есть тип DATE. попробуйте-ка объявить переменную этого типа, а не встроенного в Oracle date. Кроме как окружить имя квадратными скобками - и нет альтернативы.
De Mian
Профи


Вступление в Клуб: 26.09.2008
СообщениеСб Окт 16, 2021 13:35    Ответить с цитатой
Полезность: 1
Это изначально задумывалось. что мол если идешь по структуре,
то пишешь.. MAIN_DOCUM_REF.[NAZN]
, а если по ссылке то MAIN_DOCUM_REF->[ACC_DT].[MAIN_V_ID] (или MAIN_DOCUM_REF->[ACC_DT]->[MAIN_V_ID] )

Но потом пришло осознание, что при разработке мы должны абстрагироваться от модели. Словарь за модель отвечает. мы, как разработчики, обращаясь к атрибутам совсем не должны ещё и в коде указывать и уточнять ссылка это или скаляр. ВСя информация уже есть в словаре ЦФТ.

Но тем ни менее синтаксис -> используется в некоторых темах:
В доке по словам: Оператор обращения по ссылке (->,=>) может принимать опциональные параметры (значения которых указываются в скобках сразу после оператора), имеющие следующее назначениеSmile
De Mian
Профи


Вступление в Клуб: 26.09.2008
СообщениеСб Окт 16, 2021 13:50    Ответить с цитатой
Полезность: Нет оценки
Цитата:
Это изначально задумывалось. что мол если идешь по структуре,
то пишешь.. MAIN_DOCUM_REF.[NAZN]
, а если по ссылке то MAIN_DOCUM_REF->[ACC_DT].[MAIN_V_ID] (или MAIN_DOCUM_REF->[ACC_DT]->[MAIN_V_ID] )

Но потом пришло осознание, что при разработке мы должны абстрагироваться от модели. Словарь за модель отвечает. мы, как разработчики, обращаясь к атрибутам совсем не должны ещё и в коде указывать и уточнять ссылка это или скаляр. ВСя информация уже есть в словаре ЦФТ.

Но тем ни менее синтаксис -> используется в некоторых темах:
В доке по словам: Оператор обращения по ссылке (->,=>) может принимать опциональные параметры (значения которых указываются в скобках сразу после оператора), имеющие следующее назначениеSmile


Сайт http://cftclub.ru/ совсем плох стал.......
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru