APPEND FROM или APPEND BLANK | |
---|---|
Dron2003 Автор Сообщений: 81 Дата регистрации: 14.11.2008 |
Всем привет!
Ребята, нужна помощь. Есть таблица с записями где есть поля blob и memo. Из неё по определенным условиям во временную таблицу добавляю записи. Так вот: если добавлять по APPEND FROM, то размер файла ***.ftp растет по геометрической прогрессии. Объем из 20 записей в 3-4 раза больше, чем исходная с 800 записями. Что делаю не так? если делаю ручками через APPEND BLANK и т.д., то всё нормально. |
Re: APPEND FROM или APPEND BLANK | |
---|---|
of63 Сообщений: 25254 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
Записи удаляются? посмотри RECCOUNT(), сравни с COUNT TO m.i, и какое состояние SET DELETE в рабочем проекте ?
|
Re: APPEND FROM или APPEND BLANK | |
---|---|
PaulWist Сообщений: 14618 Дата регистрации: 01.04.2004 |
Хелп:
Цитата: ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) Исправлено 1 раз(а). Последнее : PaulWist, 21.12.17 20:55 |
Re: APPEND FROM или APPEND BLANK | |
---|---|
Dron2003 Автор Сообщений: 81 Дата регистрации: 14.11.2008 |
удаляются отлично. Когда временной таблице даю команду ZAP, то и файл *.ftp очищается.
|
Re: APPEND FROM или APPEND BLANK | |
---|---|
Dron2003 Автор Сообщений: 81 Дата регистрации: 14.11.2008 |
Нет. В исходной таблице всего 800 записей. Дело в том, что временный файл *.DBF по размерам нормальный не распухший, а только *.FTP в несколько раз больше становится.
|
Re: APPEND FROM или APPEND BLANK | |
---|---|
of63 Сообщений: 25254 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
REPLACE мемо-поля, в одной записи, если сделать много раз, то он увеличится ... примерно во столько же раз...
А что тебя беспокоит в росте FTP ? Расчитываешь на дикий размер этого FTP? |
Re: APPEND FROM или APPEND BLANK | |
---|---|
Dron2003 Автор Сообщений: 81 Дата регистрации: 14.11.2008 |
На формирование таблицы из 20 записей уходит 3-4 минуты. Меня это в корне не устраивает. сейчас глянул *.ftp блокнотом и создалось впечатление, что туда попадают все записи из исходной таблицы. Если я еще добавлю запись, то объем увеличится в 2 раза. Получается, что если исходная таблица с 800 записями имеет ftp объем 23 Мб, то временная таблица с 20 записями 460 Мб. |
Re: APPEND FROM или APPEND BLANK | |
---|---|
Dron2003 Автор Сообщений: 81 Дата регистрации: 14.11.2008 |
REPLACE мемо-поля работает правильно не раздувает ftp.
|
Re: APPEND FROM или APPEND BLANK | |
---|---|
of63 Сообщений: 25254 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
что за " все записи из исходной таблицы"?
SET DELETE какой? "если добавлять по APPEND FROM" смотреть текущее состояние SET например так (в тексте рабочего кода, и если ERROR перехвачен, виден (если не виден, спроси как) ): ERROR "SET DELETE = "+ SET("DELETE") Доб. Намудрил, смотреть так WAIT "SET DELETE = "+ SET("DELETE") WINDO Исправлено 2 раз(а). Последнее : of63, 21.12.17 21:25 |
Re: APPEND FROM или APPEND BLANK | |
---|---|
Dron2003 Автор Сообщений: 81 Дата регистрации: 14.11.2008 |
Исходная таблица упакованная и удаленных записей в ней нет. Временная таблица поле определенных действий чистится командой zap. Если заношу в нее запись по команде APPEND FROM bilet FOR n_bil=1 .and. n_vopr=5 ,то добавляется в dbf одна запись, а ftp весь ftp из таблицы bilet. Если добавлю еще одну запись APPEND FROM bilet FOR n_bil=1 .and. n_vopr=6, то в dbf еще одна запись, а в ftp еще раз весь ftp из таблицы bilet. Бред каткой-то. |
Re: APPEND FROM или APPEND BLANK | |
---|---|
Dron2003 Автор Сообщений: 81 Дата регистрации: 14.11.2008 |
set delete = ON
|
Re: APPEND FROM или APPEND BLANK | |
---|---|
akvvohinc Сообщений: 4219 Откуда: Москва Дата регистрации: 11.11.2008 |
Что-то в этом духе и есть - эту команду со времен FPD видимо не меняли. Но разве при таких небольших объемах принципиально пользоваться именно этой командой? |
Re: APPEND FROM или APPEND BLANK | |
---|---|
of63 Сообщений: 25254 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
> Бред каткой-то.
Таблица понятная фоксу? Откуда она Доб. Пример давай, и что нажимать, чтобы получить отрицательные эмоции ) Исправлено 1 раз(а). Последнее : of63, 21.12.17 21:51 |
Re: APPEND FROM или APPEND BLANK | |
---|---|
PaulWist Сообщений: 14618 Дата регистрации: 01.04.2004 |
Репо-код приведи.
PS похоже рабочая область не та. ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: APPEND FROM или APPEND BLANK | |
---|---|
Dron2003 Автор Сообщений: 81 Дата регистрации: 14.11.2008 |
Изначально хотелось всё сделать одной командой. Но чувствую, что придется всё расписывать через append blank и потом переносить содержимое через replace. |
Re: APPEND FROM или APPEND BLANK | |
---|---|
PaulWist Сообщений: 14618 Дата регистрации: 01.04.2004 |
Используй одну команду insert ... select ... ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: APPEND FROM или APPEND BLANK | |
---|---|
of63 Сообщений: 25254 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
Заругает фокс-общество Делай "правильно" Это я ТС-у
Исправлено 1 раз(а). Последнее : of63, 21.12.17 21:54 |
Re: APPEND FROM или APPEND BLANK | |
---|---|
Dron2003 Автор Сообщений: 81 Дата регистрации: 14.11.2008 |
SELECT 2 FOR n=1 TO 5 APPEND FROM bilet FOR n_bil=tmp_bilet1 .and. n_vopr=n ENDFOR FOR n=6 TO 10 APPEND FROM bilet FOR n_bil=tmp_bilet2 .and. n_vopr=n ENDFOR FOR n=11 TO 15 APPEND FROM bilet FOR n_bil=tmp_bilet3 .and. n_vopr=n ENDFOR FOR n=16 TO 20 APPEND FROM bilet FOR n_bil=tmp_bilet4 .and. n_vopr=n ENDFOR Дело тут не в коде. Я руками через окно команд делаю и результат тот же. |
Re: APPEND FROM или APPEND BLANK | |
---|---|
Dron2003 Автор Сообщений: 81 Дата регистрации: 14.11.2008 |
Ой! как давно я этой командой не пользовался, по моему еще со времен клиппера. синтаксис напомни, пожалуйста. |
Re: APPEND FROM или APPEND BLANK | |
---|---|
Dron2003 Автор Сообщений: 81 Дата регистрации: 14.11.2008 |
INSERT INTO exzamen select * from bilet Попробовал, всё сработало на ура! Но как мне перенести только те записи, которые удовлетворяют моему запрос, типа "FOR n_bil=tmp_bilet4 .and. n_vopr=n " ? |
© 2000-2024 Fox Club  |