|
фокс 2.6 странная работа select
|
|||
---|---|---|---|
#18+
а кто-нибудь знает, почему в фоксе 2.6 запрос (1) select count(*) from tab where status=4 не зависит от состояния set deleted а запрос (2) select count(*), status from tab group by status зависит??? т.е. реально (1) выдает число 10398 как для set deleted off так и для set deleted on а (2) выдает несколько строк среди которых та что для status=4 показывает разные значения ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2008, 17:39 |
|
фокс 2.6 странная работа select
|
|||
---|---|---|---|
#18+
Потому, что надо использовать "правильный" синтаксис запроса с Group by, что бы не получать "косяков" ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2008, 19:11 |
|
фокс 2.6 странная работа select
|
|||
---|---|---|---|
#18+
в смысле? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2008, 19:12 |
|
фокс 2.6 странная работа select
|
|||
---|---|---|---|
#18+
Вообще-то, разницы быть не должно. Разве что, вы выполняете запросы "в динамике". Т.е. какой-то другой пользователь в это же время удаляет/добавляет/изменяет записи. Попробуйте подсчитать количество записей, помеченных как удаленные для status=4 Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2008, 00:33 |
|
фокс 2.6 странная работа select
|
|||
---|---|---|---|
#18+
BorisTheBlade, select count(*), status from tab WHERE !DELETED() group by status ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2008, 11:19 |
|
фокс 2.6 странная работа select
|
|||
---|---|---|---|
#18+
FAMBorisTheBlade, select count(*), status from tab WHERE !DELETED() group by status это я уже сделал, но мне непонятно почему два очень похожих запроса работают по разному и в документации об этом ничего нет. я совершенно случайно наткнулся на эту особенность или глюк уж не знаю. написали бы, что результат select может быть непредсказуем в случае отсутствия явного указания deleted() все выполнялось одним пользователем на локальной машине. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2008, 17:16 |
|
фокс 2.6 странная работа select
|
|||
---|---|---|---|
#18+
и кстати в microsoft foxpro оба представленных запроса работают корректно, в соответствии с установкой set deleted ... похоже на глюк. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2008, 17:18 |
|
фокс 2.6 странная работа select
|
|||
---|---|---|---|
#18+
в смысле microsoft visual foxpro ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2008, 17:20 |
|
фокс 2.6 странная работа select
|
|||
---|---|---|---|
#18+
авторselect count(*) from tab where status=4 не зависит от состояния set deleted Правильно этот запрос отрабатывает в FPD26, учитывая текущее значение sed deleted. Ищите у себя косяк ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2008, 18:20 |
|
фокс 2.6 странная работа select
|
|||
---|---|---|---|
#18+
В 2.6 состояние set deleted должно учитываться. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2008, 01:11 |
|
фокс 2.6 странная работа select
|
|||
---|---|---|---|
#18+
сегодня еще раз попробовал: set deleted off select count(*) from tab && 10511 set deleted on select count(*) from tab && 10511 close all use tab set deleted off count to m.i && 10511 set deleted on count to m.i && 10508 может это из-за индексов, есть несколько штук в том числе по deleted()? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2008, 15:48 |
|
фокс 2.6 странная работа select
|
|||
---|---|---|---|
#18+
Для проверки кривых индексов попробуй их удалить и повторить тест. Также возможно кривые сами таблицы. Перезалей данные в новую таблицу, удали парочку записей и повтори проверку. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2008, 16:23 |
|
фокс 2.6 странная работа select
|
|||
---|---|---|---|
#18+
Перестал использовать сложный Select с фильтром по Deleted() после того как получил разные результаты (разница была только в том, что в одной таблице указатель стоял на помеченной на удаление, а при следующим запросе стоял на обычной записи). ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2008, 22:48 |
|
|
start [/forum/topic.php?fid=41&fpage=139&tid=1586945]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
54ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
others: | 316ms |
total: | 465ms |
0 / 0 |