| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Foxpro/Clipper/Dbase > Переход с Клипера на Windows&Lunix через Harbour |
| Автор: AndreyV 13.11.2009, 21:40 |
| Всем кто жалуется на медленность Клипера под Виндами.... Читал здесь по какие-то несчастные 300 000 записей, проблемами архитектуры КЛИЕНТ-СЕРВЕР и т.д. Есть простой вариант перехода на Harbour ! Что это такое ? Смотри www.clipper.borda.ru Уже 2 года перевел свои программы на него и не знаю теперь проблем с "вылетом" (как у Клипера) и с тормозами на нем. Если есть вопросы, пишите - отвечу.... |
| Автор: Данкинг 13.11.2009, 21:55 |
Вообще-то Клиппер и есть ДОСовская программа, а для Винды давно уже FoxPro придумали. И 300000 записей Фокс отлично понимает. Или это спам обычный? |
| Автор: AndreyV 14.11.2009, 01:36 |
Нет это не СПАМ ! Это просто перевод Клипера ДОСовского БЕЗ переделки под Windows (включая Win Mobile) и Lunix, Mac OS ..... и под Android тоже будет.... С сохранением простоты работы..... и доступом уже к MS SQL, My SQL и других тяжелых баз.... А на Фоксе тяжеловато работать.... Тем более сопровождать для большого кол-ва клиентов... |
| Автор: Данкинг 14.11.2009, 02:26 |
Чем же работа с Фоксом тяжелее Клиппера? |
| Автор: MoLeX 14.11.2009, 17:31 |
| AndreyV, жду четких аргументов на поставленные вопросы. В противном случае расценю твои действия как рекламу, со всеми вытекающими последствиями. |
| Автор: Данкинг 15.11.2009, 18:11 | ||
| Ладно, убедил. Скачаю инсталлятор, при случае посмотрю. Только не знаю всё же, насколько Клиппер в каком бы то ни было виде до сих пор актуален. При наличии современных мощных СУБД вроде того же Oracle. Добавлено @ 18:13
Подключиться к базе Oracle или Access можно. Другое дело, что это реализуется через любимое всеми место. |
| Автор: AndreyV 15.11.2009, 19:06 | ||
К Oracle тоде доступ есть из Harbour'a.... Только где сейчас в кризис можно найти работу по этой Oracle ??? Да и насколько часто она используется ??? Включая MS SQL ??? В основной массе программ до сих пор используется DBF. Вот отзыв одного пользователя Harbour'a: Занимаюсь в финансовом секторе, есть задача (xharbour 1.1.0. simplex) БД из 57 Dbf и 100 cdx общий размер DBF файлов – 3 Гб. Количество записей в одной из табл. 106 млн. и 98 млн. в другой. Количество пользователей – 5- 10 станций Windiws XP . Работает нормально. Протестировал на предмет скорости выборки: Из БД (500 тыс.записей) выборка 1150 записей за 4 сек…. Хотя это и условная скорость, но показатель
На Харборе это просто: #include "adordd.ch" REQUEST ADORDD FUNCTION Main() LOCAL aDbf := { { "FIRST", "C", 10, 0 }, { "LAST", "C", 10, 0 },{ "AGE", "N", 8, 0 } } DbCreate( "test2.mdb;table1", aDbf, "ADORDD" ) USE test2.mdb VIA "ADORDD" TABLE "table1" APPEND BLANK test2->First := "Вася" test2->Last := "Сидоров" test2->Age := 45 APPEND BLANK test2->First := "Коля" test2->Last := "Пупкин" test2->Age := 32 GO TOP Browse() return nil |
| Автор: Данкинг 15.11.2009, 19:32 | ||||||
Нет, я, конечно, FoxPro уважаю, но всё же факты...
106 млн записей в файле DBF? Ты сам в это веришь? Собственно, на фоксе не так уж сложно, по крайней мере, считывать:
|
| Автор: AndreyV 15.11.2009, 20:02 |
Зачем веришь-не веришь ? На Харборе возьми и создай и работай.... Или смотри форум: http://clipper.borda.ru/?1-1-0-00000121-000-0-0-1199983232 и сам задавай свое верю-не верю .... |
| Автор: Данкинг 15.11.2009, 21:31 |
| Если там какой-то свой формат DBF - тогда, конечно, возможно. Но что в обычном файле dbase 106 млн - не верю всё равно. |
| Автор: AndreyV 15.11.2009, 21:56 |
Нет там никакого своего формата, есть поддержка всех форматов... А сколько по документации может "держать" DBF Visual FoxPro ? |
| Автор: Данкинг 15.11.2009, 22:05 | ||
Поставим вопрос иначе: таблица на 106 млн откроется ещё чем-то кроме Харбора? Файл .dbf не должен был больше 2 гигов по размеру. Так по документации, так и на практике. Т.е. от числа записей как такового не зависит, но понятно, что в среднем это 1.5 миллиона. |
| Автор: AndreyV 16.11.2009, 00:28 |
У моего знакомого (он в фирме работает, которая обслуживает налоговые по Москве) программа на Clipper 5.2 работает c 2.5 - 3.5 миллиона записей, т.е. выборки и ввод идет постоянно. Так видать даже ДОСовский Клипер "круче" Ms Fox'a ..... А на практике такое кол-во записей существуют и работают с ними. Читайте или напишите программистам которые работают... Я же ссылки дал, так что им задавайте свое "верю-не верю" .... |
| Автор: Данкинг 16.11.2009, 00:36 | ||
И сетевой доступ есть, т.е. несколько пользователей делают выборки из одних и тех же таблиц? Только у Фокса, даже Досовского 2.1 интерфейс для работы с БД куда удобнее. |
| Автор: AndreyV 16.11.2009, 12:01 | ||
Да, а какая же это задача без сети... Я здесь подразумеваю и пишу про программы с СЕТЕВЫМ доступом в архитектуре Файл-Сервера. Другие не рассматриваю ! |
| Автор: Данкинг 16.11.2009, 12:09 |
Я работал в одной компании, это было в 2003 году, если не ошибаюсь, так так как раз БД была на клиппере. Разумеется, сетевая, и висела она при этом ужасно. При этом периодически, как я уже говорил, рушились индексы (для их восстановления существовал командный файл, который пересоздавал все эти .CDX), а один раз даже накрылись данные за последние два дня, и приходилось все счета набивать заново. Правда, за эту работу нам доплатили. |
| Автор: AndreyV 16.11.2009, 12:12 | ||
Не знаю про такие понятия как "интерфейс" для работы с БД. На Клипере работал с 1989 по 2006 год.... Да и сейчас помогаю друзьям... Наверно имелось ввиду что через оболочку Фокса можно работать в командной строке, так все эти действия в Клипере можно было делать в DOT'e (это программа специальная была в поставке).... И не было вообще-то проблем в то время с этим. Даже наоборот - Клиперные программы были лучше по скорости и памяти хватало... А на Фоксе вечно для больших систем памяти не хватало, приходилось выгружать часть систем... Я это видел и знаю ! А индексы не рушаться, спросите любого Клипериста.... Даже сейчас системы на Clipper 5.2 до сих пор работают... А на 5.3 появился Фоксовский драйвер баз данных CDX. Так на нем никогда проблем не было.... |
| Автор: Данкинг 16.11.2009, 12:26 |
Я имел в виду, во-первых, визуальность, а, во-вторых, как раз командное окно. Про DOT не в курсе, не видел никогда. Ну так вот рушились же в той БД. Я уж не знаю причину этого, но вроде как о ненадёжности индексов как клиппера, так и фокса часто говорят. |
| Автор: AndreyV 16.11.2009, 23:52 |
| Cколько записей может храниться в базе DBF Максимальное количество одновременно хранимых записей для DBF, указанных в документации Clipper'а и FOX'а - 1 миллиард. 1С использует бибилиотеку CodeBase. Думаю, что и там такое же ограничение. Смотри: http://www.forum.mista.ru/topic.php?id=420921 или погугли сам.... |
| Автор: Reese 28.11.2009, 12:09 | ||||||||
Ограничение в 2Гб на таблицу - это ограничение фокса. Если нужно больше, то через Advantage Database Server.
Это как посчитано ? У меня в таблице более 11 миллионов, а таблица чуть больше гигабайта.
Подключиться из фокса можно к любой другой СУБД, для которой есть ODBC-драйвер или OLEDB-провайдер. Причем делается это стандартными средствами.
Действительно, Компания Майкрософт купила FoxSoftware. Все остальное - фантазия автора. |
| Автор: Данкинг 10.12.2009, 02:54 | ||
| Только заметил продолжение развития темы. Про полтора миллиона? Экспериментальным путём, т.е. исходя из личной практики.
И как ты эту таблицу открываешь? Фоксом, оператором USE... ? |
| Автор: Matvey2 15.12.2009, 03:18 |
| Извините, влезу в ваш спор, И простой Clipper 5.2 до сих пор жив и даже приспособился под XP т.е перестал тормозить себя и других при своей работе В общем, я тоже за Clipper P.S. А чтоб индексы не рушились достаточно использовать пустой файл с названием как у индекса, но с типом .ok Когда открываешь базу-стираешь все файлы .ok одноименные с ее индексами, а когда закрываешь-то создаешь файлы .ok снова Если же у тебя был вылет по любой причине, например свет погас, то при новом открытии базы, файлов .ok , соответствующих индексам не будет. В этом случае сразу делаешь создание индексного файла ( index on to..., а не reindex ) При таком простом решении в Clipper годами все работает без проблем |
| Автор: AndreyV 25.12.2009, 01:00 | ||
Не совсем понятно, для чего эта заморочка.... Даже когда комп отрубается, не замечал что индекс рушиться... Правда я в последнее время всегда использовал драйвер CDX. А что касается кол-ва записей в базе смотрите и читайте, что практики говорят: http://clipper.borda.ru/?1-1-0-00000121-000-0-0-1258544763 |
| Автор: Reese 28.12.2009, 03:08 | ||
Да. Простым оператором USE <имя таблицы> In 0 Shared |
| Автор: AndreyV 10.2.2010, 18:41 |
| Сделал небольшое пособие для начинающих по переходу с Clipper на xHarbour for Windows ... /* Clipper for Windows, Clipper для Windows, перевод Клипера под Виндовс, переход с Клипера, Clipper to Windows, Clipper to Harbour, Clipper to xHarbor */ Пускай народ пользуется... Может кому нужно .... Брать пока здесь: files.mail.ru/FY5OCR Рекомендации и исправления приветствуются.... |