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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 05.03.2005, 11:21   #3  
Wamr is offline
Wamr
----------------
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
 
1,737 / 868 (32) +++++++
Регистрация: 15.01.2002
Адрес: Москва
Записей в блоге: 7
Запросы к БД при разных CacheLookup
Для опытов я выбрал табличку InventLocation
PHP код:
static void Job5(Args _args)
{
    
InventLocation      inventLocation;
    
InventLocationId    locId 'MW'bug 'Нет склада';
    ;

    
flush inventLocation;


    
inventLocation InventLocation::find(locId);
    
inventLocation InventLocation::find(locId);
    
inventLocation InventLocation::find(locIdtrue);

    
inventLocation InventLocation::find(bug);
    
inventLocation InventLocation::find(bug);
    
inventLocation InventLocation::find(bugtrue);

    
ttsbegin;
    
inventLocation InventLocation::find(locId);
    
inventLocation InventLocation::find(locId);
    
inventLocation InventLocation::find(locIdtrue);

    
inventLocation InventLocation::find(bug);
    
inventLocation InventLocation::find(bug);
    
inventLocation InventLocation::find(bugtrue);
    
ttscommit;

    
inventLocation InventLocation::find(locId);
    
inventLocation InventLocation::find(locId);
    
inventLocation InventLocation::find(locIdtrue);

    
inventLocation InventLocation::find(bug);
    
inventLocation InventLocation::find(bug);
    
inventLocation InventLocation::find(bugtrue);

И вот какая картина в профайлере SQL:
None
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='MW'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='MW'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='MW'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'
TTSBEGIN
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='MW'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='MW'
SELECT * FROM InventLocation A(UPDLOCK) WHERE INVENTLOCATIONID='MW'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A(UPDLOCK) WHERE INVENTLOCATIONID='Нет склада'
TTSCOMMIT
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='MW'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='MW'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='MW'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'

NoneInTTS
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='MW'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'
TTSBEGIN
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='MW'
SELECT * FROM InventLocation A(UPDLOCK) WHERE INVENTLOCATIONID='MW'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A(UPDLOCK) WHERE INVENTLOCATIONID='Нет склада'
TTSCOMMIT
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'

Found
SELECT * FROM InventLocation A(NOLOCK) WHERE INVENTLOCATIONID='MW'
SELECT * FROM InventLocation A(NOLOCK) WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A(NOLOCK) WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'
TTSBEGIN
SELECT * FROM InventLocation A(UPDLOCK) WHERE INVENTLOCATIONID='MW'
SELECT * FROM InventLocation A(NOLOCK) WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A(NOLOCK) WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A(UPDLOCK) WHERE INVENTLOCATIONID='Нет склада'
TTSCOMMIT
SELECT * FROM InventLocation A(NOLOCK) WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A(NOLOCK) WHERE INVENTLOCATIONID='Нет склада'
SELECT * FROM InventLocation A WHERE INVENTLOCATIONID='Нет склада'

FoundAndEmpty
SELECT * FROM InventLocation A(NOLOCK) WHERE INVENTLOCATIONID='MW'
SELECT * FROM InventLocation A(NOLOCK) WHERE INVENTLOCATIONID='Нет склада'
TTSBEGIN
SELECT * FROM InventLocation A(UPDLOCK) WHERE INVENTLOCATIONID='MW'
SELECT * FROM InventLocation A(UPDLOCK) WHERE INVENTLOCATIONID='Нет склада'
TTSCOMMIT

EntireTable
SELECT * FROM InventLocation A(NOLOCK)
TTSBEGIN
SELECT * FROM InventLocation A(UPDLOCK) WHERE INVENTLOCATIONID='MW'
TTSCOMMIT

Как говорится "почувствуйте разницу"
За это сообщение автора поблагодарили: kashperuk (5), sukhanchik (8), Logger (8), alex55 (1), Molchun (1), Kabardian (3).
Теги
cache, cache lookup, faq, кэширование, полезное, таблица, транзакции

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
xPropertySetData::unpack : Property Not Found :1156 Yan Dex DAX: Программирование 5 27.05.2014 07:17
Курсовая разница. Ax3.0 Lyuboff DAX: Функционал 4 13.05.2008 10:46
Трансляция 4.0 и 3.0: есть ли разница Arahnid DAX: Функционал 1 19.08.2007 12:26
курсовая разница в АХ glance DAX: Прочие вопросы 0 27.07.2007 13:09
Разница между пустой Группой на форме, и группой в которую включён элемент 3oppo DAX: Программирование 8 26.12.2006 10:47
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

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