AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: База знаний и проекты
NAV
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 14.01.2015, 07:59   #1  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,448 / 1792 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
А можно спросить про индексы в Dynamics? Вопрос касается наследования таблиц, которые как мы знаем на SQL представляются одной широкой таблицей. Всё собирался сам посмотреть но никак руки не дойдут. Может кто уже разбирался, для общего развития. Интересно каким образом в AX2012 система задает уникальный индекс по дочерней таблице так чтобы это не влияло на остальных наследников? Ведь у тех в соответствующих полях только повторяющиеся NULL?

Через фильтруемый индекс?
Старый 14.01.2015, 08:38   #2  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2494 (89) +++++++++
Регистрация: 20.08.2005
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
А можно спросить про индексы в Dynamics? Вопрос касается наследования таблиц, которые как мы знаем на SQL представляются одной широкой таблицей. Всё собирался сам посмотреть но никак руки не дойдут. Может кто уже разбирался, для общего развития. Интересно каким образом в AX2012 система задает уникальный индекс по дочерней таблице так чтобы это не влияло на остальных наследников? Ведь у тех в соответствующих полях только повторяющиеся NULL?

Через фильтруемый индекс?
Да, именно так и делает
По полю, указанному в свойстве InstanceRelationType базовой таблицы
__________________
Axapta v.3.0 sp5 kr2
За это сообщение автора поблагодарили: S.Kuskov (1).
Старый 14.01.2015, 14:50   #3  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,983 / 3273 (117) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Интересно каким образом в AX2012 система задает уникальный индекс по дочерней таблице так чтобы это не влияло на остальных наследников? Ведь у тех в соответствующих полях только повторяющиеся NULL?

Через фильтруемый индекс?
Если не ошибаюсь, то по умолчанию null значения не индексируются, поэтому на остальных наследников этот индекс не должен повлиять. Они не должны им индексироваться по дефолту, раз в индексируемых полях для этих наследников лежат null...
Старый 14.01.2015, 15:08   #4  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,448 / 1792 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от Logger Посмотреть сообщение
Если не ошибаюсь, то по умолчанию null значения не индексируются, поэтому на остальных наследников этот индекс не должен повлиять. Они не должны им индексироваться по дефолту, раз в индексируемых полях для этих наследников лежат null...
Боюсь, что ошибаетесь
http://technet.microsoft.com/ru-ru/l...=sql.105).aspx
Цитата:
В целях индексирования значения NULL рассматриваются как равные. Следовательно, нельзя создать уникальный индекс или ограничение UNIQUE, если ключевые значения NULL присутствуют в более чем одной строке.
Старый 14.01.2015, 15:11   #5  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5803 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от Logger Посмотреть сообщение
Если не ошибаюсь, то по умолчанию null значения не индексируются
В Oracle DB - может быть...
Старый 27.01.2015, 13:16   #6  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,983 / 3273 (117) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от gl00mie Посмотреть сообщение
В Oracle DB - может быть...
Да, так и есть. Наш DBA такой пример построил. В оракле null значения ключа просто в индекс не попадают. Поэтому возможен уникальный индекс по столбцу в котором повторяются null значения.
За это сообщение автора поблагодарили: S.Kuskov (1), SOVA (1).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: AX Performance Troubleshooting Checklist Part 1A [Introduction and SQL Configuration] Blog bot DAX Blogs 0 05.09.2014 21:11
emeadaxsupport: How to perform a data center change (change of the physical location) where a SQL server 2008 R 2 cluster installation and MS Dynamics AX 4.0 is involved? Blog bot DAX Blogs 0 21.06.2014 19:19
axinthefield: New DMVs in SQL Server 2008 R2 SP1 and SQL 2012 ('Denali') and Performance Analyzer for Microsoft Dynamics Blog bot DAX Blogs 0 14.01.2012 05:33
Dynamics AX Sustained Engineering: SQL Server 2005 sp3 & SQL Server 2008 with Dynamics AX Blog bot DAX Blogs 0 12.02.2009 06:08
Dynamics AX: Looking into SQL Server 2008 Blog bot DAX Blogs 0 16.01.2009 05:06

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 04:00.