Виталий Тихвинский
Связь с базой данных через объекты в Visual Basic
Необходимые элементы управления и их настройка
Рис 1 Связь с Базой Данных
Для связи с Базой Данных необходимо на Форме разместить объект DataBase (Data), а так же элементы управления, и связать их, как показано на рисунке 1.
Основным элементом управления является TextBox в однострочном режиме, но взависимости от просматриваемого типа поля, элемент управления может меняться, например, для просмотра поля с картинками записанного в ACCESS нужно применить элемент управления OLE. Для просмотра всех полей таблицы часто применяют элемент управления DBGrid, однако, при помощи него невозможно просмотреть поле с картинкой. При связи DBGrid c DataBase устанавливается только имя DataBase, т.к. все поля таблицы подключаются автоматически к этому элементу управления.
Элемент управления DBGrid
Установка DBGrid
Данный элемент упраления необходимо установить на панель инструментов, т.е. нажать правую клавишу мыши на ней, открыть пункт контекстного меню Components и выбрать имя элемента (Microsoft Data Bound Grid Control) из списка.
Рис 2 DBGrid с загруженной таблицей
Установленный DBGrid на форму представляет собой таблицу через которую можно просматривать и редактировать данные.
Свойства DBGrid
- AllowAddNew – При значении True позволяет добавлять новую запись в таблицу.
- AllowDelete – При значении True позволяет удалять запись в таблице.
- AllowUpdate – При значении True позволяет редактировать запись в таблице.
Элемент управления DataBase (Data)
Данный элемент управления непосредственно связан с базой данных и конкретной таблицей базы данных, через него другие элементы управления связываются с полями таблицы.
Свойства объекта DataBase
- DataBaseName – Связь с базой данных через указанный полный путь к ней.
- RecordSource - Связь с таблицей б.д. через указанное имя
- Exclusive – При значении True база доступна только для открывшего, false – для всех пользователей.
- Conect – Тип связываемой базы данных.
- ReadOnly - При значении True база открывается только для чтения, false – и для записи.
Перемещение по таблице Базы Данных
Перемещаться по базе данных можно как используя кнопки управления объекта DataBase, так и используя его методы.
Кнопки перемещения объекта DataBase по таблице Базы Данных
Необходимо кликнуть мышью по указанной кнопке на рисунке 3.
Рис 3 Кнопки перемещения объекта DataBase
Методы перемещения объекта DataBase
DataBase1.Recordset.МетодПеремещения (Имя DataBase)
Имя Методов:
- MoveFirst – На первую запись
- MoveLast – На последнюю запись
- MovePrevious – На предыдущую запись
- MoveNext - На последующую запись
Функции определение местонахождения указателя при перемещении по таблице
DataBase1.Recordset.Функция (Имя DataBase)
Имена функций:
- EOF – Равно True если указатель за концом таблицы
- BOF - Равно True если указатель перед началом таблицы
Перезагрузка базы данных
Если необходимо подключить новую базу данных во время работы программы в объекте DataBase, или сменить таблицу в указанном объекте, необходимо произвести перезагрузку методом Refresh. Пример
‘смена таблицы в объекте DataBase названного Data1
Data1. RecordSource = “Таблица 1”
‘перезагрузка базы данных
Data1.Refresh
Поиск в базе данных методами DataBase
Методы поиска DataBase
DataBase1.Recordset.МетодПоиска “СроковоеВыражениеОпределПоиск” (Имя DataBase)
Методы поиска
- FindFirst – Найти первую запись
- FindLast – Найти последнюю запись
- FindPrevious – Найти предыдущую запись
- FindNext - Найти последующую запись
Формат строкового выражения определяющего тип поиска в активной таблице: “[Имя поля] = ‘Значение’”
Если имя поля состоит из одного слова то квадратные скобки обрамляющие имя опускаются.
За именем идет знак сравнения поля со значением:
- = - равно
- <> - неравно
- > - больше
- < - меньше
- >= - больше либо равно
- <= - меньше либо равно
Если поиск осуществляется в текстовом поле, то значение берется в апострофы, при числовом поле апострофы опускаются.
Можно объединить несколько условий в одно применив логический оператор AND или OR.
Функция определяющая обнаруженную запись по указанному условию
DataBase1.Recordset.Функция (Имя DataBase)
Имя функции NoMatch – Равно True если запись необнаружена, False – в противном случаи.
Операторы определяющие вид посика в строковых полях
- Option compare text – поиск без учета регистра
- Option compare Binary - поиск с учетом регистра
Работа с записями через DataBase
DataBase1.Recordset.Метод (Имя DataBase)
Имена методов
- AddNew – добавить новую запись
- Delete - удалить текущую запись
- Update – записать текущую запись