Чтение онлайн

на главную - закладки

Жанры

VBA для чайников

Каммингс Стив

Шрифт:

* DragOver и DragPlot. Происходят, когда ячейки перемешаются над внедренной диаграммой или опускаются на нее соответственно.

* MouseDown. MouseUp и MouseMove. Происходят в ответ на действия мыши.

* Select. Происходит при выделении какой-либо части диаграммы. Написанный код может определять тип и характеристики выделенного элемента и проводить соответствуюшие действия.

* Series Change. Происходит, когда пользователь изменяет значение в диаграмме через саму диаграмму (а не изменяя значения, содержащиеся в листе).

Глава 17. Программирование баз данных.

В

этой главе ...

~ Знакомство с терминологией

~ Написание кода баз данных с помощью объектов данных ActiveX

~ Программирование с помощью DAO

~ Ускорение с помощью SQL

Несмотря на то, что Access - официальное приложение для работы с базами данных, входящее в состав Office, вы не ограничены только этим приложением при создании пользовательских баз данных с помощью VBA. Действительно, любое приложение, поддерживающее VBA, - от Word до CorelDraw, - позволяет использовать сведения, которые хранятся в базах данных на вашем компьютере, сервере локальной сети или любом другом компьютере в Internet. В настоящей главе мы остановимся на нескольких базовых приемах программирования на VBA, позволяющих управлять данными прямо из ваших собственных VBA-программ.

Программирование баз данных на VBA: основные термины

Прежде чем вы сможете создавать собственный программный код для работы с базами данных, вам следует ознакомиться с основной терминологией. Этому и посвящен материал настоящего раздела.

О ядре баз данных

Программное обеспечение, которое отвечает за выполнение основных действий по извлечению информации, которая содержится в одном или нескольких файлах базы данных, называется ядром базы данных. Ядро базы данных часто называют просто базой данных, хотя согласитесь, что называть программное обеспечение, управляющее информацией в базе данных, и саму базу данных одним термином несколько нелогично.

Хотя эта программа и предназначена для выполнения различных функций с базами данных, Access нельзя назвать ядром базы данных. Access- это "клиент" (front end), который показывает вам, какие именно команды и данные доступны, а также воспринимает ваши инструкции по отношению к информации, такие как ее изменение, добавление или удаление. Все эти инструкции передаются серверной части (back end) СУБД.

Стандартным ядром баз данных для Access является Microsoft Jet. Стандартные файлы баз данных Access (вы всегда сможете определить их по расширению .mdb) на самом деле являются файлами Jet. Работая через Jet, другие инструменты разработки, такие как Visual Basic, могут получить из файлов баз данных все необходимые сведения.

Jet предназначено для обслуживания индивидуальных пользователей и небольших рабочих групп. Для решения более серьезных задач, уровня предприятия, например, предназначены другие ядра баз данных. Сюда относятся еще один программный продукт компании Microsoft - SQL Server, а также предложения от других ведущих поставщиков, таких как Oracle и Informix. Версия SQL Server для разработчика, которая называется SQL Server 2000 Desktop Engine, поставляется в составе Access 2002.

Она позволяет вам разрабатывать базирующиеся на технологиях SQL Server приложениях баз данных прямо на своем компьютере, а затем передавать их "настоящей" версии SQL Server, работающей в сети.

В любом случае, всегда можно запутаться, когда дело касается программного обеспечения клиентной и серверной частей СУБД. Работая с Access или любым другим VBА -приложением, вы можете взаимодействовать с различными ядрами баз данных, руководствуясь прежде всего вашими конкретными потребностями. Access предоставляет больше возможностей программисту баз данных, но вы можете использовать Word, CorelDraw или любое другое поддерживающее VBA приложение, и получить при этом не менее превосходные результаты.

SQL и VBA

SQL (Structured Query Language - Язык структурированных запросов) - это общепринятый стандарт организации запросов баз данных (запрос - это команда, которая получает или изменяет информацию, которая содержится в базе данных). Любая система управления данных, будь то Jet или Oracle, поддерживает язык SQL. SQL- это полноправный язык программирования, однако лучше всего он подходит именно для управления базами данных. Вы создаете инструкции SQL для выбора, изменения или удаления определенных наборов записей.

А как же SQL и VBA дополняют друг друга? VBA позволяет передавать ядру базы данных инструкции SQL для их дальнейшей обработки. После обработки инструкций и извлечения необходимого набора записей ядром базы данных вам снова потребуется VBA для отображения и форматирования результатов: SQL при этом не используется.

Все об объектах баз данных

Сам по себе язык VBA не предоставляет никаких средств для доступа к базам данных и манипулирования содержащейся в них информацией. Однако после объединения с библиотекой объектов баз данных VBA тотчас превращается в инструмент для программирования баз данных с очень широкими возможностями.

Основная задача, выполняемая библиотекой объектов базы данных,- представление базы данных и всех ее компонентов (таблицы, запросы, отчеты и т.д.) в объекты, по своему проявлению мало отличающиеся от других объектов, используемых в VBA. Благодаря этому вы получаете возможность манипулировать ими, используя их свойства, методы и события (подробности в главе 12). Поскольку база данных представляется в виде набора объектов, ее библиотека объектов избавляет вас от необходимости беспокоиться о деталях сложной структуры базы данных. Кроме того, вы можете использовать тот же набор объектов для манипулирования базами данных других типов.

Вы можете выбирать среди нескольких библиотек баз данных; чаще других пользуются предложения компании Microsoft. Сюда относятся ADO (ActiveX Data Objects- Объекты данных ActiveX), текущий стандарт, и DAO (Data Access Objects - Объекты доступа к данным), старая библиотека объектов, но все еще широко используемая. Другие поставщики предлагают свои собственные библиотеки объектов баз данных. Например, если вы работаете исключительно с файлами dBase, вам следует подумать об использовании CodeBase (продукт компании Sequiter Software).

Поделиться:
Популярные книги

Черный маг императора 3

Герда Александр
3. Черный маг императора
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Черный маг императора 3

Повелитель механического легиона. Том VIII

Лисицин Евгений
8. Повелитель механического легиона
Фантастика:
технофэнтези
аниме
фэнтези
5.00
рейтинг книги
Повелитель механического легиона. Том VIII

Пипец Котенку! 3

Майерс Александр
3. РОС: Пипец Котенку!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Пипец Котенку! 3

Разбуди меня

Рам Янка
7. Серьёзные мальчики в форме
Любовные романы:
современные любовные романы
остросюжетные любовные романы
5.00
рейтинг книги
Разбуди меня

Боги, пиво и дурак. Том 6

Горина Юлия Николаевна
6. Боги, пиво и дурак
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Боги, пиво и дурак. Том 6

Болотник 2

Панченко Андрей Алексеевич
2. Болотник
Фантастика:
попаданцы
альтернативная история
6.25
рейтинг книги
Болотник 2

Ты всё ещё моя

Тодорова Елена
4. Под запретом
Любовные романы:
современные любовные романы
7.00
рейтинг книги
Ты всё ещё моя

S-T-I-K-S. Пройти через туман

Елисеев Алексей Станиславович
Вселенная S-T-I-K-S
Фантастика:
боевая фантастика
7.00
рейтинг книги
S-T-I-K-S. Пройти через туман

Имя нам Легион. Том 4

Дорничев Дмитрий
4. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 4

Сводный гад

Рам Янка
2. Самбисты
Любовные романы:
современные любовные романы
эро литература
5.00
рейтинг книги
Сводный гад

Я князь. Книга XVIII

Дрейк Сириус
18. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я князь. Книга XVIII

Королевская Академия Магии. Неестественный Отбор

Самсонова Наталья
Любовные романы:
любовно-фантастические романы
8.22
рейтинг книги
Королевская Академия Магии. Неестественный Отбор

Последняя Арена 6

Греков Сергей
6. Последняя Арена
Фантастика:
рпг
постапокалипсис
5.00
рейтинг книги
Последняя Арена 6

Жребий некроманта. Надежда рода

Решетов Евгений Валерьевич
1. Жребий некроманта
Фантастика:
фэнтези
попаданцы
6.50
рейтинг книги
Жребий некроманта. Надежда рода