Идёт загрузка страницы...

htp://aptem.net.ru






На главную страничку учебника Visual Basic

Примеры работы с БД

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

  • База данных mdb (Microsoft Access)
  • Подключение через элемент Data
  • Имя таблицы в базе данных: Телефоны
  • Тип соединения: Dynaset
  • Имя первого стобца: Фамилия
  • Имя второго: ID
  • Имя третьего: Телефон

Примеры

ПРОСТО ПОИСК С ПЕРЕХОДОМ НА НАЙДЕННУЮ ЯЧЕЙКУ
Data1.Recordset.FindNext "[Фамилия] = 'Иванов'"
If Data1.Recordset.EOF = True Then Data1.Recordset.MoveLast


СМЕНА ЗНАЧЕНИЯ В ЯЧЕЙКЕ
Data1.Recordset.Edit
Data1.Recordset![Телефон] = "2-22-22"
Data1.Recordset.Update


ДОБАВИТЬ ЗАПИСЬ
Data1.Recordset.AddNew
Data1.Recordset![Фамилия] = "Новый чувак"
Data1.Recordset![Телефон] = "2-15-65"
Data1.Recordset.Update

ПОИСК ПО КРИТЕРИЮ
Data1.RecordSource = "SELECT * FROM Телефоны WHERE [Фамилия] _
LIKE 'Ива*'"
Data1.Refresh

ПОИСК С ДИРЕКТИВОЙ BETWEEN
Data1.RecordSource = "SELECT * FROM Телефоны WHERE [Фамилия] _
BETWEEN 'Волков' AND 'Тарабрин'"
Data1.Refresh

СОРТИРОВКА ДАННЫХ ПО ОПРЕДЕЛЁННОМУ ПОЛЮ
Data1.RecordSource = "SELECT * FROM Телефоны ORDER BY [Фамилия] _
ASC" 'или вместо ASC - DESC (тогда по убыванию)
Data1.Refresh


ПОИСК ЗАПИСЕЙ С НУЛЕВЫМИ ЗНАЧЕНИЯМИ
Data1.RecordSource = "SELECT * FROM Телефоны WHERE [Фамилия] IS NULL"
Data1.Refresh

ПРОВЕРИТЬ, НАЙДЕНО ЛИ ЧТО-ЛИБО, ЕСЛИ НЕ НАЙДЕНО, ТО
ОТОБРАЗИТЬ ВСЕ ЗАПИСИ


If Data1.Recordset.RecordCount = 0 Then
MsgBox "Таких записей нет! Показываю все!'", vbCritical, _
"Результаты SQL запроса"
Dim recAllRecords As Recordset
Set recAllRecords = Data1.Database.OpenRecordset("Телефоны")
Set Data1.Recordset = recAllRecords
End If

На главную страничку учебника Visual Basic