|
значение индекса ???
|
|||
---|---|---|---|
#18+
можно ли получить значение (не выражение) индекса некой отдельно взятой записи? то есть мне нужно проверить соответствует ли данной записи индекс. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2009, 13:21 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
k=key() ?&k но вообще-то обычно используют конструкции типа If seek(_key)... либо seek(_key) Do while pole1+pole2+... = key либо Locate If foun() и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2009, 13:27 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
не совсем то .... сейчас использую вот такую методу., lcKey=key() nrrec=Recno() Set Key To &lcKey Go nrrec If nrrec#Recno() && знать чтото не так endif но хотелось бы без лишних движений .... встал на запись получил значение индекса "nind" например и : If nidn#&lcKey && знать чтото не так endif ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2009, 13:46 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
Борискаможно ли получить значение (не выражение) индекса некой отдельно взятой записи? то есть мне нужно проверить соответствует ли данной записи индекс.Ну задлянафига? Проверять корректность индексов? Ну проверил и что дальше? Переиндексация? А почему сразу ее не сделать? В чем выигрыш? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2009, 13:54 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
переписать запись это исправит индекс Scatter Memvar Gather Memvar ненужен монопольный доступ и периндексация иногда немаленьких таблиц чтобы исправить индекс одной записи . ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2009, 13:59 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
В данном случае нужен не KEY(), а EVALUATE(KEY()) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2009, 15:24 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
согласен. но вопрос остался открыт! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2009, 15:30 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
В клиппере, помнится, такая функция была. В фоксе ее нет, увы ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2009, 12:13 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
жаль если так .... но fox ведь ищет !!! как ? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2009, 12:44 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
Борискажаль если так .... но fox ведь ищет !!! как ? Вам ведь GermanGM уже подсказывал выше : Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2009, 14:52 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
GermanGM подсказал чем заменить &key() это подсказка в сторону повышения скорострельности но вот результат возвращаемый &key() или Evaluate(key()) бутет один а нужен другой.... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2009, 15:00 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
БорискаGermanGM подсказал чем заменить &key() это подсказка в сторону повышения скорострельности но вот результат возвращаемый &key() или Evaluate(key()) бутет один а нужен другой.... А вообще, откуда у вас пошла такая странная идея, что портится именно значение ключа? В 99 случаев из ста в индексе портится структура. SCATTER/GATHER может помочь прибить проблемный узел и перестроить его на новый листовой узел индекса. А может и не помочь, если проблема не в одном только узле. Более того, надо помнить, что структура дерева на каждом UPDATE полей становится все более высокой и рыхлой. Полный реиндекс будет гораздо надежнее, да и повысит производительность индекса за счет снижения высоты дерева. По самому вопросу: 1. Фокс хранит значения KEY ни разу не так, как сами данные. 2. Выдернуть это значение можно прочитав его из индексного файла. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2009, 07:03 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
БорискаGermanGM подсказал чем заменить &key() это подсказка в сторону повышения скорострельности но вот результат возвращаемый &key() или Evaluate(key()) бутет один а нужен другой.... Короче, человек решил на самом низком уровне править индексный файл, подменяя своей фантазией весь механизм команд INDEX/REINDEX. Флаг в руки. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2009, 09:04 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
reware, очень безапелляционно, браво. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2009, 10:47 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
Kruchinin Pahan, спасибо, суть вопроса как раз в том разбирать .cdx или есть более простой способ. простого видимо нет. вот только не знаю спрашивать как или лучше не надо (вдруг это крамола...) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2009, 10:54 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
БорискаKruchinin Pahan, спасибо, суть вопроса как раз в том разбирать .cdx или есть более простой способ. простого видимо нет. вот только не знаю спрашивать как или лучше не надо (вдруг это крамола...) В хелпе есть описание структуры компаундного индексного файла. Но у меня есть подозрение, что достоверно проверить целостность индекса можно только перебрав все дерево целиком. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2009, 11:12 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
> Автор: Бориска Вопрос был в том, как получить значение индекса для отдельно взятой записи, только сколько Вас не спрашивали, Вы так и не ответили и я так и не понял для чего, Вам, это нужно. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2009, 11:21 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
ну да. действительно существуют такие ошибки индекса при котором портится только одна запись получается что locate или seek по какомуто другому тегу запись находит, а seek по сбойному тегу не находит. и казалось бы действительно обновите только эту запись и все восстановится. но думаю не все так просто: индекс хранить соответствие индексных значений номерам записей а не наоборот. т.е. исходя из записи невозможно найти индесное значение из cdx ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2009, 11:28 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
АлексейОневозможно :-) пожалуй всетаки возможно, но эта задача сравнима с переиндексацией и выполнять её налету для каждой записи будет накладно. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2009, 11:32 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
Игорь Горбонос, автор просто думает, что он изобрел таки способ проверки и коррекции индекса на ходу, в "фоновом" режиме. Только вот он накак не может понять, что кроме значений ключевых выражений индекс еще и структурирован и структура индекса неразрывно связана с его корректностью и правкой значения ключа он индекс не поправит. И что он далеко не первый такой "изобретатель" и все предыдущие пришли к одному и тому же выводу: индекс - это производная от данных и любые проверки и коррекции, в конце концов, сводятся к сканировнию всей таблицы и выполнению кучи действий, которые нафиг не нужны при обычной переиндексации с одинаковым, в общем-то, результатом. Зачем делать лишнюю работу? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2009, 11:34 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
проходящий. Я просто хочу, что-бы ТС сам озадачился и ответил на вопрос, зачем ему нужно знать значение ключа индекса для отдельной записи, а не наши домыслы. :) З.Ы. Мой хрустальный шар ещё не предсказыват так хорошо как твой , но помочь желающим заблудится, это мы завсегда пожалуста Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2009, 11:59 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
если я отвечу зачем вы ответите как ? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2009, 12:22 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
> Автор: Бориска > если я отвечу зачем вы ответите как ? Тебе дали один способ, читать из индексного файла, второй способ это реализовать алгоритм создания индекса самостоятельно и скармливать на вход данные для которых будет расчитыватся значение индекса. Оба способа не назовёшь тривиальными, поэтому и хочется узнать для чего это понадобилось. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2009, 12:34 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
Игорь Горбонос, предупрежден значит вооружен! я хочу знать что в результате аварийного выхода из программы некого отдельного пользователя не возникла необходимость проиндексировать таблицу N или таблицы N и N' . чтобы не индексировать все 10 или 20 или 100 или сколько там будет прога использовать таблиц из них некоторые таблицы могут быть велики а пользователь может уходя на обед из розетки системник выключает о чем ввиду диковенности способа я даже не догадываюсь .... это к примеру ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2009, 12:48 |
|
значение индекса ???
|
|||
---|---|---|---|
#18+
> Автор: Бориска > я хочу знать что в результате аварийного выхода из программы некого отдельного пользователя не возникла > необходимость проиндексировать таблицу N или таблицы N и N' . Понятно, почитай это тынц а я, например, не вижу никаких способов это узнать не проиндексировав по-новой и не сравнив "старый" индексный файл с "новым", причем побайтно . Тогда уж просто запускать переиндексацию первентивно. Кстати, как ты видишь процес проверки? Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2009, 12:58 |
|
|
start [/forum/topic.php?fid=41&msg=36184336&tid=1586031]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
39ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
others: | 329ms |
total: | 473ms |
0 / 0 |