Введение
Как известно, первоначально компьютер создавался как средство для проведения вычислений, причем, в основном, для научно-технических расчетов (компьютер — вычислитель по-английски). Однако, в настоящее время, 90% ресурсов компьютеров в мире используется в целях хранения и переработки информации, Именно для этого были созданы специально ориентированные комплексы программ, получившие название Систем Управления Базами Данных (СУБД).
Отличительной особенностью СУБД по сравнению с обычными языками программирования является то, что с ними может иметь дело любой человек, даже не прошедший подготовки по программированию.
Самое существенное в использовании компьютера как средства для хранения и обработки информации состоит в том, что, во-первых, допускается очень емкое хранение (магнитная дискета диаметром 3.5″ позволяет хранить текст в 500 страниц обычной книги), а во-вторых, поиск требуемых записей происходит в считанные секунды и их можно сразу вывести на печать, чтобы получить стандартную справку или ответ.
История СУБД, пожалуй, начинается с 1982 г., когда фирма Ashton Tale создала СУБД dBase, а затем dBase II, получившее наибольшее распространение в мире, т.к. сочетали относительную простоту использования и многообразие возможностей. Эти СУБД, к тому же, реализованы на компьютерах IBM PC-наиболее популярных в мире.
Дальнейшее совершенствование этих СУБД привело к появлению dBase III, dBase III Plus. FoxBASE+… В настоящее время список СУБД можно продолжать и продолжать. Мы будем рассматривать в данной курсовой работе Visual FoxPro версии 5.0. Она, как и другие СУБД имеет два режима работы: непосредственный (интерактивный), когда команда исполняется сразу же и программный, когда серия команд оформляется в виде цельной программы, записывается на диск и потом многократно может быть использована. Наличие 2 режимов опять-таки позволяет работать в Visual FoxPro и начинающему и достаточно квалифицированному программисту. Заметим, что данная СУБД обладает весьма важным достоинством — в ней возможно активное использование форм, запросов и отчетов. Это позволяет нередко для выполнения рядовых задач обходиться без прямого программирования. Однако выполнение серьезных задач все равно требует умения программировать.
Общая характеристика Visual FoxPro
Visual FoxPro 5.0 представляет собой СУБД реляционного типа с развитыми средствами создания БД, организация запросов к ним, построение приложений с использованием визуального, объектно-ориентированного программирования. СУБД Visual FoxPro 5.0 может работать в среде Windows 9x и Windows NT.
В Visual FoxPro реализованы все атрибуты реляционной СУБД. Так, в ней введено понятие базы данных как совокупности связанных таблиц, информация о которых хранится в словаре данных. В БД определяются условия её целостности с помощью первичных и внешних ключей таблиц. Все события (изменения), происходящие в БД, могут обнаруживаться и централизованно обрабатываться в связи с появлением в Visual FoxPro таких средств, как триггеры и встроенные процедуры.
Visual FoxPro совместима с более ранними версиями FoxPro. Поэтому приложения, разработанные в более ранних версиях FoxPro, могут быть адаптированы с ее помощью в среду Windows 9x. Visual FoxPro обладает высокой скоростью в обслуживании БД.
Используя стандарты ODBC и SQL-запросы для выборки данных, Visual FoxPro позволяет работать с БД СУБД Access, Paradox, dBase и т.д., с серверами БД — Microsoft SQL Server, Oracle и др.
Приложение Visual FoxPro может одновременно работать как с собственными, так и сетевыми таблицами, расположенными на других компьютерах локальной сети.
Поддерживаются такие механизмы работы с приложениями Windows, как:
— Dynamic Data Exchange (DDE) — динамический обмен данными;
— Object Linking and Embedding (OLE) — встраивание и связывание объектов.
база оптовая программный режим
При работе Visual FoxPro 5.0 под управлением Windows 9x к аппаратным ресурсам предъявляются следующие требования:
— IBM — совместимый компьютер с 486 процессором и выше;
— 10 Мб основной памяти;
— 15 Мб дискового пространства для минимальной инсталляции, 100 Мб — для типичной инсталляции и 240 Мб — для максимальной инсталляции;
— монитор VGA или с более высоким разрешением.
С помощью Visual FoxPro можно создавать сетевые приложения, функционирующие в сетях под управлением Microsoft Windows 9x, Windows NT, Microsoft LAN Manager и др.
Для упрощения процесса разработки баз данных и приложений имеется большое количество Мастеров, Конструкторов и Построителей.
Visual FoxPro — краткое описание, общие сведенья
FoxPro работает с таблицами формата *.dbf
Visual FoxPro 7.0 снабжено мощным набором мастеров, которые позволяют новичку достаточно быстро создать мощное работоспособное приложение, однако не могу рекомендовать использовать эту возможность людям, желающим, создать рациональное приложение, т.к. мастера используют навороченные библиотеки и не рационально используют память. Программы созданные с помощью мастеров очень грамозки.
FoxPro сильно интегрирован с SQL, позволяет вставлять блоки SQL-комманд непосредственно в тело основного кода и использовать в SQL-запросах собственные (фоксовские) функции. Что позволяет быстро и эффективно обробатывать большие базы, даже если таблицы не индексированы. Кроме того, FoxPro облодает собственными, очень мощными, и главное, удобными средствами работы с БД.
Наиболее крупные БД созданные на FoxPro (из известных автору):
База данных ГУВД г. Москвы.
База данных МГТС.
База данных Пенсионного фонда России.
Это основной язык написания программ Главного Научно-Вычеслительного Центра (ГНИВЦ) Министерства РФ по налогам и сборам
К достоинствам VFoxPro можно так же отнести: возможность создания составного индекса, работа с курсорами (виртуальными таблицами, не отличающимися от обычных, но исчезающих после завершения сеанса работа, т.е. не остаются ни в памяти ни на диске), возможность экспортировать\импортировать данные в\из XML, VFoxPro работает с другими базами по средствам драйвера ODBC, VFoxPro обладает высокой надежностью при работе с БД (в т.ч. и с индексами) и полность соответствует объявленным возможностям.
На VFoxPro можно создавать и клиент-серверные БД, однако в этой области VFoxPro значительно уступает большинству из известных серверов БД.
Резюме VFoxPro мощнейшее средство для работы с локальными базами данных, значительно превосходящее, по эффективности, все остальные системы БД.
Недостатки VFoxPro
Все вышесказанное относится к VFoxPro как средству разработки баз данных, однако на нем не представляется интересным создавать приложения не связанные с БД, хотя сам FoxPro является языком самодостаточным. Это связано с тем, что с VFoxPro поставляется очень убогий класс для работы с визуальными компонентами, а исходник этого класса закрыт. Поэтому разработчик ограничен в возможностях «украшать» свою программу. Следующее, в FoxPro не происходит объявления типа переменных, это лишает возможности контролировать правильность обращения к переменной и, главное, под переменную отводится максимальное кол-во памяти, поэтому программы написанные на VFoxPro очень ресурсоемкие. Большой недостаток VFoxPro — это крайне слабый конструктор отчетов, крайне осложняющий разработку приложения. Для работы программы, созданной на VFoxPro, необходимы библиотеки поддержки, что увеличивает размер поставляемой программы еще, примерно, на 4 Mb. Есть еще более мелкие недостатки.
Резюме Основными недостатками VFoxPro являются: большие требования к памяти, программами созданными на VFoxPro и слабые возможности по работе с визуальными компонентами.
Рекомендации для выбора Могу порекомендовать выбрать VFoxPro, тем кому требуется ввести и обрабатывать большие базы данных на локальных компьютерах или в небольших сетях. Т.к. VFoxPro позволяет создавать запросы, практически любой сложности. Разумеется не рекомендую использовать этот язык для составления больших серверных баз и для написания программ не связанных с ведением баз данных.
Ограничения VFoxPro 7.0
Для людей имеющих представление, что такое БД привожу некоторые ограничения для 7-го Фокса (это лучше любых хар-тик), выводы сами напросятся. Для остальных распишу все позже.
Ограничения работы с базами
Максимум записей в файл таблицы. 1 миллиард
Максимальный размер файла таблицы. 2 гигабайта
Максимум символов в записи (MEMO). 65,500
Максимум символов в поле таблицы. 254
Максимальный размер числовых (и с плавающей точкой) полей. 20
Максимум полей записей. 255
Максимум таблиц открывается в одно время. 255
(ограниченно памятью и доступными дескрипторами файла.)
Максимум байтов в индексном ключе в некомпактном индексе. 100
Максимум байтов в индексную ключе в компактном индексе. 240
Максимум открытых индексных файлов в таблице. неограниченно
Максимум открытых индексов во всех базах. неограниченно
Максимум отношений. неограниченно
Максимальные поля, которые могут быть выбраны SQL SELECT. 255
Ограничения языка
Минимальное значение целого числа. -2,147,483,647
Максимальное значение целого числа. 2,147,483,647
Цифры точности в числовых вычислениях: VFoxPro может обрабатывать числа до 9007199254740992 (2^53) в точных вычислениях.
Значение по умолчанию переменных. 1,024
Максимум переменных. 65,000
Максимум массивов. 65,000
Максимум элементов в массив. 65,000
Максимум вложений DO. 128
Максимум вложенных структурированных команд программирования. 384
Максимум транзакций. 5
Максимальная длина символьной переменой. 255
Максимум открытых окон. неограниченно
Максимум открытых окон Browse. 255
Максимум символов в макроподстановке. 8,192
Обращаю внимание еще раз: FoxPro — это не только средство работы с базами данных, но это еще и язык программирования высокого уровня.
Типы данных Visual FoxPro
Тип данных Описание Размер Диапазон
Character Произвольный текст. 1 байт на символ; до 254 байтов Любые символы
Currency Денежная сумма. 8 байтов от -922337203685477.5808 до 922337203685477.5807
Date Хронологическая дата, состоящая из месяца, года и числа. 8 байтов от 01/01/100 до 12/31/9999
DateTime Хронологическая дата, состоящая из месяца, года, числа и времени. 8 байтов от 01/01/100 до 12/31/9999, плюс от 00:00:00 утра до 11:59:59 вечера
Logical Логическое значение истинности. 1 байт Истина (.T.) или Ложь (.F.)
Numeric Целое или с дробной частью число. 8 байтов в памяти;
от 1 до 20 байтов в таблице от — .9999999999E+19 до .9999999999E+20
Variant размер и диапазон принимает в соответствии с веденными данными
Типы данных полей таблиц Visual FoxPro
Тип поля Описание Размер Диапазон
Double Число с плавающей запятой двойной точности. 8 байтов от
+/-4.94065645841247E-324 до +/-1.79769313486232E308
Float Такое же, как Numeric. 8 байтов в памяти;
от 1 до 20 байтов в таблице от — .9999999999E+19 до .9999999999E+20
General Ссылка на OLE-объект. 4 байта в таблице. Ограничен только доступной памятью
Integer Целочисленные значения 4 байта от -2147483647 до 2147483646
Memo Ссылка на блок данных 4 байта в таблице Ограничен только доступной памятью
Character (Двоичный) Любые символьные данные, которые нужно сопровождать без изменения кодовых страниц 1 байт на символ до 254 байтов Любые символы
Memo (Двоичный) Любые memo-поля, которые нужно сопровождать без изменения кодовых страниц 4 байта в таблице Ограничен только доступной памятью
Системные требования (для Visual FoxPro 7)
Процессор Pentium 133 или выше
Минимальный объем оперативной памяти — 64Mb, рекомендуется не менее 128Mb
Жесткий диск не менее 115Mb, до 200Mb, при полной установке.
Операционная система MS Windows98, ME, NT4, 2000, XP.
Видеорижим — SVGA.
Кроме того, необходимо, что бы на компьютере были установленны Internet Explorer 5.5 и Service Pack 1 (для Win2000).
Поддержка триггеров — да.
Поддержка хранимых процедур — да.
Поддержка транзакций — да.
Защита данных, шифрование — нет, шифрование данных осуществляется перед занесением данных в таблицу.
Возможность удалённого и Web администрирования — нет
Возможность импорта данных из
— MS Excell 2.0 — 97
— Lotus 1-3
— Paradox (до версии 4.0)
— Symphony
— FrameWork II
— MultiPlan 4.01
— RapidFile
Возможность экспорта данных в
— FoxBase+ (DBF)
— dBase IV (DBF)
— текстовый файл (txt)
— Lotus 1-2-3 1-A (WK1, WRK)
— Symphony (WR1, WRK)
— MultiPlan 4.01 (MOD)
System Data Format (SDF)
и некоторые другие, мало кому известные.
Наличие утилит для автоматизации операций для работы в командной строке, наличие собственных утилит для отладки запросов (выполнение SQL, построение плана выполнения кверей, профайлер и т.п.), утилиты для слежения за производительностью сервера. — Сам FoxPro
При подготовке материала использовались источники:
https://studbooks.net/2106786/informatika/obschaya_harakteristika_visual_foxpro
https://softclipper.net/clipper-faqvopros-otvet/visual-foxpro-obshchie-svedenya-preimushchestva-i-nedostatki.html