Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / FoxPro, Visual FoxPro Новый топик    Ответить
 удаление записи  [new]
dji_buffon
Member

Откуда:
Сообщений: 21
Вопрос мой собственно про удаление записи из таблицы. На данный момент удаляю стандартно: Delepe, Pack. Но слышал о том, что в программе Pack лучше не использовать. Если это так, то как можно другим способом данные из таблицы физичиски удалить?
26 дек 08, 21:46    [6627564]     Ответить | Цитировать Сообщить модератору
 Re: удаление записи  [new]
BMJ
Member

Откуда: Москва
Сообщений: 270
dji_buffon,

Зачем удалять "физически" при каждом delete?
26 дек 08, 23:24    [6627883]     Ответить | Цитировать Сообщить модератору
 Re: удаление записи  [new]
FAM
Member

Откуда:
Сообщений: 361
dji_buffon,

Существует последовательность удаления строки:

1. Пометка записи на удаление осуществляется командами Delete from... или Delete().
2. Восстановление ошибчно помеченных записей Recall for... (all)
3. Физическое удаление командой Pack.

Но физическое удаление нельзя делать в сетевом приложении, поэтому и не рекомендуется его применять. А уж если очень хочется - то во внерабочее время администратор может это сделать, но никак не при каждом удалении записей.

К тому же перед удалением можно проверить удаляемые записи - а вдруг на самом деле помечена по ошибке? Т.е. физическое удаление - это целый процесс, который стоит продумывать очень внимательно.
27 дек 08, 13:49    [6628486]     Ответить | Цитировать Сообщить модератору
 Re: удаление записи  [new]
__гость__
Guest
2dji_buffon

А может команды - SET DELETED ON
Будет достаточно ?

Если нет , то зачем на самом деле физика нужна ?
27 дек 08, 13:54    [6628492]     Ответить | Цитировать Сообщить модератору
 Re: удаление записи  [new]
dji_buffon
Member

Откуда:
Сообщений: 21
про SET DELETED ON
если прописываю так, данные действительно "исчезают" и можно реально работать без учета этих данных. НО когда заново запускаешь проект эти данные снова становятся видимыми и учитываются при работе. Можно сделать так, чтобы при новом запуске данные, помеченные на удаление, не появлялись снова?
27 дек 08, 14:10    [6628506]     Ответить | Цитировать Сообщить модератору
 Re: удаление записи  [new]
__гость__
Guest
2dji_buffon,

Дык,
выполняйте SET DELETED ON сразу после запуска программы, одной из первых команд в коде .
Так обычно и делается , настройка среды идёт в самом начале, в том числе и SETDELETE.
27 дек 08, 14:15    [6628510]     Ответить | Цитировать Сообщить модератору
 Re: удаление записи  [new]
Nikita_2
Member

Откуда:
Сообщений: 80
Пардон что влезаю, вопросик : reccount() подсчитывает записи в открытой таблице, а как посчитать записи помеченные на удаление?
27 дек 08, 21:33    [6629197]     Ответить | Цитировать Сообщить модератору
 Re: удаление записи  [new]
?
Guest
COUNT FOR DELETED() TO A
? A
27 дек 08, 21:37    [6629205]     Ответить | Цитировать Сообщить модератору
 Re: удаление записи  [new]
Nikita_2
Member

Откуда:
Сообщений: 80
Спасибо дорогой!
27 дек 08, 21:39    [6629207]     Ответить | Цитировать Сообщить модератору
Все форумы / FoxPro, Visual FoxPro Ответить