Почему не используется RASHMORE | |
---|---|
Бураков Сергей Автор Сообщений: 280 Откуда: Calgary Дата регистрации: 07.02.2005 |
В переменной qk находится запрос.
? qk Цитата:SET EXACT OFF SELE kvart ? sys(13,1) Цитата:SELE kvart SYS(3054,12,'C') &qk Цитата: То есть индекс в таблице kvart не использовался. Почему ? ------------------ |
Re: Почему не используется RASHMORE | |
---|---|
Владимир Максимов Сообщений: 14100 Откуда: Москва Дата регистрации: 02.09.2000 |
Rushmore-оптимизация не работает если:
-) Индекс содержит FOR-условие -) Индекс имеет тип UNIQUE -) Текущее (на момент выполнения запроса) значение настройки SET COLLATE отлично от IDXCollate() соответствующего индекса -) Индекс поврежден (нужна периндексация) ------------------ |
Re: Почему не используется RASHMORE | |
---|---|
Бураков Сергей Автор Сообщений: 280 Откуда: Calgary Дата регистрации: 07.02.2005 |
Файл переиндексировал, ни одной из вышеуказанных причин нет, а RASHMORE все равно не работает.
Но ,как показала проверка, не работает он только в VFP9, а в восьмерке и шестерке работает очень даже замечательно. По видимому, очередной глюк новой версии. У меня, вроде бы, релиз, скачивал с MAIL.ru->vfp9->vfp9. |
Re: Почему не используется RASHMORE | |
---|---|
PaulWist Сообщений: 14625 Дата регистрации: 01.04.2004 |
Вопросы
индексы (спрашиваю на всякий случай) Цитата: Цитата: Цитата: что за функция Цитата: Выложи пример табличек с индексами в студию - попотрошим. ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: Почему не используется RASHMORE | |
---|---|
Перминов Игорь Сообщений: 1591 Откуда: Красная Орловка Дата регистрации: 16.09.2001 |
------------------ Без коментариев.. |
Re: Почему не используется RASHMORE | |
---|---|
PaulWist Сообщений: 14625 Дата регистрации: 01.04.2004 |
Спасибо за хелп (видимо он у Вас неполный), если не трудно , поясните список параметров
Цитата: ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: Почему не используется RASHMORE | |
---|---|
Перминов Игорь Сообщений: 1591 Откуда: Красная Орловка Дата регистрации: 16.09.2001 |
Да ... знает :puke:
------------------ Без коментариев.. |
Re: Почему не используется RASHMORE | |
---|---|
PaulWist Сообщений: 14625 Дата регистрации: 01.04.2004 |
Ну, вот - внимательнее читать надо исходные посты, поэтому и возникают дополнительные вопросы.
------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: Почему не используется RASHMORE | |
---|---|
Владимир Максимов Сообщений: 14100 Откуда: Москва Дата регистрации: 02.09.2000 |
Вот это да! Оказывается, при использовании функций в выражении индекса в VFP9, т.е. индекс вида
INDEX ON STR(MyField) TAG strMyField В запросе вида: SELECT * FROM MyTable WHERE STR(MyField) = '123' SYS(3054) покажет FULL только если установлена настройка SET ANSI ON или использовано тождественное равенство SELECT * FROM MyTable WHERE STR(MyField) == '123' Правда я еще не проверял - это просто глюк SYS(3054) или действительно нет оптимизации. Сейчас проверю на больших объемах. ------------------ |
Похоже, новая фича VFP9 | |
---|---|
Владимир Максимов Сообщений: 14100 Откуда: Москва Дата регистрации: 02.09.2000 |
Опаньки. Похоже так и есть. В смысле НЕ глюк. В смысле при сравнении символьных строк в командах Select-SQL в VFP9 индекс используется только при настройке SET ANSI ON или использовании тождественного равенства.
Подозреваю, это следствие введение типа данных VarChar. Правда, огорчает, что об этой особенности нигде в HELP не упомянуто. ------------------ |
© 2000-2024 Fox Club  |