· Сложная процедура обеспечения целостности. Если два пользователя обновляют данные, то при загрузке этих данных на сервер сложно решить, данные какого пользователя следует считать более верными.
Из-за этих недостатков такие программы уже не используют.
При клиент-серверной технологии построения БД программа (клиент) посылает простой текстовый запрос на сервер с целью получения каких-либо данных. Сервер обрабатывает его и возвращает только необходимую порцию данных. Когда нужно изменить их, опять посылается запрос к серверу на изменение и сервер изменяет данные в своей базе. Таким образом, по сети происходит перекачка только текстовых запросов, которые в основном занимают размер меньше одного килобайта. Все данные обрабатывает сервер, а значит, машина клиента загружается намного меньше и не так сильно требовательна к ресурсам. Сервер отсылает клиенту только самые необходимые данные, а значит, отсутствует излишняя перекачка копии всей базы.
К базе данных могут обращаться как один, так и несколько пользователей (клиентов). Пользователи такой базы данных, как правило, распределены по сети. Поскольку они независимы друг от друга, не исключено их одновременное обращение к базе данных. Для базы данных клиент/сервер это не является проблемой. Сервер "знает", как обрабатывать одновременные запросы.
Благодаря всему этому сетевые базы данных практически не используются. В настоящее время их полностью вытесняет технология клиент-серверных БД.
Программа, написанная мной, работает именно с клиент-серверной базой данных. А сама программа написана на языке Delphi с использованием языка структурированных запросов SQL, о которых также следует рассказать поподробнее.
Язык программирования Delphi.
Delphi (Де́лфи) — среда программирования, в которой используется язык программирования Object Pascal. Начиная со среды разработки Delphi 7.0, в официальных документах Borland стала использовать название Delphi для обозначения языка Object Pascal.
Язык Delphi был выбран мной, благодаря относительной простоте освоения самого языка, а также благодаря удобной среде разработки, которая содержит огромное количество компонентов для работы с различными информационными областями. Среди которых присутствуют и компоненты, необходимые для работы с базами данных. В том числе и компоненты для взаимодействия с базами данных при помощи языка структурированных запросов SQL.
Язык структурированных запросов SQL
SQL (англ. Structured Query Language — «язык структурированных запросов») — универсальный компьютерный язык, применяемый для создания, модификации и управления данными в реляционных базах данных. Особенность предложений этого языка состоит в том, что они ориентированы в большей степени на конечный результат обработки данных, чем на процедуру этой обработки. SQL сам определяет, где находятся данные, какие индексы и даже наиболее эффективные последовательности операций следует использовать для их получения: не надо указывать эти детали в запросе к базе данных. Реализация в SQL концепции операций, ориентированных на табличное представление данных, позволило создать компактный язык с небольшим (менее 30) набором предложений.
Программа для ввода и редактирования информации об аспирантах в базе данных ИС аспирантуры.
Как уже упоминалось выше, программа, созданная мной, написана на языке Delphi с использованием SQL запросов для работы с записями в базе данных ИС аспирантов, разработанной моим научным руководителем.
Программа позволяет пользователю добавлять в базу данных новые записи об аспирантах, их научных руководителях, кафедрах, на которых обучаются аспиранты, темы их кандидатских диссертаций, а также аннотации к ним. Для этого необходимо сначала выбрать кафедру, на которой обучается аспирант (Рис.1).
Рис.1 Выбор кафедры
Затем нужно выбрать научного руководителя аспиранта, которого мы собираемся добавить (Рис.2).
Рис.2 Выбор научного руководителя
И затем нажать на кнопку «Добавить нового аспиранта». После чего появится форма, где необходимо ввести ФИО аспиранта, тему его диссертации и аннотацию к ней. И нажать «Сохранить» (Рис.3).
Рис.3 Добавление нового аспиранта
Также пользователь может редактировать уже имеющуюся в базе данных информацию об аспирантах. Для этого необходимо выбрать аспиранта из списка на главной форме (Рис.*)
Рис.4 Выбор аспиранта из списка
И нажать кнопку «Редактировать информацию». После чего появится окно, в точности такое же, как и для добавления нового аспиранта, но с уже заполненными полями (Рис.5). При завершении редактирования (также, как и с формой добавления) — нажать кнопку «Сохранить».
Рис.5 Редактирование информации об аспиранте.
Как видно из рисунков — для более удобного поиска и выбора аспирантов из списка на главной форме реализована система фильтрации. Как она работает: выбирая кафедру, формируется список научных руководителей, принадлежащих этой кафедре. В свою очередь, при выборе научного руководителя, на форму выводится список аспирантов, которых курирует данный руководитель (Рис.6).
Рис.6 Фильтрация по кафедрам и научным руководителям
Это сильно облегчает поиск нужного нам аспиранта, особенно, если база данных содержит большое количество записей.
Библиографический список
1. Фленов М.Е. Библия Delphi – Спб.: БВХ–Петербург, 2004. – 880с.: ил.
2. Структуризированный язык запросов (SQL) – Сайт кафедры вычислительной техники СПб ГУ ИТМО [Электронный ресурс] // Режим доступа: http://194.85.162.82/education/documentation/sql_kg/.
3. SQL Tutorial – w3schools.com [Электронный ресурс] // Режим доступа: http://www.w3schools.com/sql/.
4. SQL – Википедия [Электронный ресурс] // Режим доступа: http://ru.wikipedia.org/wiki/SQL.
5. Реляционные базы данных и язык SQL – HELLOWORLD [Электронный ресурс] // Режим доступа: http://www.helloworld.ru/texts/comp/db/mysql/osnovisql/stranica2.html.
6. Реляционная база данных – Википедия [Электронный ресурс] // Режим доступа: http://ru.wikipedia.org/wiki/%D0%A0%D0%B5%D0%BB%D1%8F%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D0%B0%D1%8F_%D0%B1%D0%B0%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.
7. Азбука реляционных баз данных – Портал для веб-мастеров и веб-программистов wwwmaster.ru [Электронный ресурс] // Режим доступа: http://www.wwwmaster.ru/article.php?nart=20.
8. MySQL Workbench – Визуальный редактор MySQL баз – Шпаргалко Сумасшедшего ПрограммЁра [Электронный ресурс] // Режим доступа: http://www.shpargalko.ru/2010/06/27/mysql-workbench-vizualnyj-redaktor-mysql-baz/
9. Базы данных клиент/сервер – Help Studio [Электронный ресурс] // Режим доступа: http://helpstudio.h1.ru/books/d4/d4_16/__350.htm