DBF Viewer 2000: удаление нескольких записей из командной строки?

Я пытаюсь написать файл .bat, который вызовет DBF Viewer 2000 для удаления всех записей из базы данных с полем даты до 01.01.2006. Однако я нигде не могу найти ничего, что иллюстрировало бы, как сделать что-то подобное. Может кто-то указать мне верное направление?


person DoubleBass    schedule 23.10.2014    source источник
comment
Я не знаю DBF Viewer 2000, но если вы хотите использовать Python, я могу предложить решение.   -  person Ethan Furman    schedule 23.10.2014
comment
Если DBF имеет столбцы с автоинкрементом, я знаю, что версия DBF Viewer не уважает его и фактически переводит этот столбец из автоинкремента обратно в целочисленный тип данных... будьте осторожны   -  person DRapp    schedule 23.10.2014


Ответы (1)


Не уверен насчет DBF Viewer 2000, но эту задачу легко выполнить с помощью DBF Commander Pro. . Используйте следующую команду в пакетном режиме (или в файле .BAT):

dbfcommander.exe -q "delete from 'D:\somefile.dbf' where date_field < ctod('01/01/2006')"

Это пометит все записи, удовлетворяющие условию, как удаленные. Для полного удаления записей используйте еще одну команду:

dbfcommander.exe -q "pack 'D:\somefile.dbf'"

Программа имеет 20-дневный полнофункциональный пробный период, так что вы можете выполнить работу в течение 3 недель бесплатно.

person Oleg    schedule 02.12.2014