Опубликован: 04.07.2006 | Доступ: свободный | Студентов: 5468 / 628 | Оценка: 4.11 / 3.96 | Длительность: 11:08:00
Лекция 4:

Базы данных

Аннотация: Большой материал по базам данных включает, среди прочего, DAO, ADO, использование соответствующих элементов управления, программное создание баз данных и работу с ними, репликацию и синхронизацию баз данных. В каждом случае материал поддерживается практическими работами.

Использование элемента управления Data

Элемент управления Data обеспечивает связь проекта Visual Basic с файлом базы данных. Следующие свойства элемента управления Data используются при реализации связи, табл. 4.1.

Таблица 4.1. Свойства элемента управления Data
Свойство Пример значения свойства
Connect Access
DatabaseName A:\Studium.mdb ' имя базы данных
RecordSource software ' имя таблицы

Для отображения/редактирования данных в простейшем случае может быть использовано текстовое поле, поле списка и т.д., при этом используются их свойства, данные в табл. 4.2:

Таблица 4.2. Свойства элемента управления TextBox
Свойство Пример значения свойства
DataSource Data1 ' элемент управления Data с его номером
DataField Hersteller ' имя поля таблицы базы данных. Замечание: для каждого элемента управления TextBox не забудьте установить свое значение этого свойства

Практическая работа 21. Базы данных; элемент управления Data (считать таблицу в двумерный массив и вывести на экран в массив поля списка). Использование стандартного модуля

Задание: создать таблицу базы данных, содержащую данные о 9 программных продуктах с полями: Hersteller - изготовитель, Typ - тип продукта, Preis - цена, Tendenz - тенденция, Anbieter - распространитель, Ort - местность, табл. 4.3:

Таблица 4.3. Software
Коde Hersteler Typ Preis Tendenz Anbieter Ort
1 Ahead Nero Burning 59 A Media Markt Berlin-Tegel
2 Steinberg Maxima Studio 59 В Media Markt Koeln
3 Norton Anti Virus 70 A Schaubandt Flensburg
4 G Data Power Adress-manager 70 A Pro Markt Berlin
5 Top Systems Win Zip 89 B Media Markt Stuttgart
6 Alfons Lernwelt Deutsch 98 A Media Markt Berlin-NeuKoeln
7 Microsoft Encarta 99 A Saturn Duesseldorf
8 Cequadrat Picture it 99 A Schaubandt Isenhagen
9 Corel Corel Draw 379 A US-Electronic Hilden

Следует создать стандартный модуль для обеспечения использования переменных в (данном случае) в 2-х формах. Первую форму использовать для связи проекта с базой данных (использовать элементы управления Data и TextBox) и создания двумерного массива, соответствующего таблице базы данных. Вторую форму использовать для вывода двумерного массива на экран (в массив поля списка) и нахождения максимальной цены программного продукта.

Последовательность действий:

  1. Создать
    • модуль
    • на первой форме (рис.4.1): элементы управления Data и массив Text1(7) для вывода 7 полей таблицы на экран, 3 командные кнопки:
      • для процедуры построчного считывания записей таблицы в двумерный массив,
      • для процедуры разового считывания тех же данных в тот же массив,
      • для перехода ко второй форме,
    • на второй форме: массив List1 (9) для вывода данных двумерного массива на экран, элемент управления Label1, 2 командные кнопки для:
      • процедуры вывода двумерного массива на экран в массив поля списка,
      • процедуры нахождения максимальной цены продукта и вывода в поле Label1 результата,
    • присвоить значения свойствам элемента управления Data и свойствам элементов массива текстового поля (примеры даны в табл. 4.1: и табл. 4.2:),
    • описать переменные в области модуля и ввести код, данный ниже (пояснения даны под комментариями), стартовать проект
Доступ к данным; использование элемента управления Data, вид формы Form 1

Рис. 4.1. Доступ к данным; использование элемента управления Data, вид формы Form 1
Доступ к данным - Data, вид формы Form2

Рис. 4.2. Доступ к данным - Data, вид формы Form2
(General) (Declarations)
' описание двумерного массива, соответствующего
' таблице software базы данных
Public mass(9, 6) As Variant 
Public i As Integer, j As Integer, k As Integer
' переменная-счетчик для работы с номерами записей
' таблицы
Public n As Integer
' переменная для хранения максимальной цены продукта
Public max As Integer

Form1

' Последовательное считывание данных таблицы software
' в массив текстового поля. Щелчком на правой 
' кнопке элемента Data и последовательным 
' нажатием командной кнопки Command1 (Caption = Lesen1)
' присвоить текущему элементу массива 
' mass(n, j) текущее значение свойства Text 
' элементов массива текстового поля

Private Sub Command1_Click() 
mass (n, 1) = Text1(1): mass (n, 2) = Text1(2)
mass (n, 3) = Text1(3): mass (n, 4) = Text1(4)
mass (n, 5) = Text1(5): mass (n, 6) = Text1(6)
n = n + 1 ' увеличить значение переменной-счeтчик на 1
End Sub

' автоматическое считывание данных в массив
' (Caption = Lesen2)
Private Sub Command2_Click()
For n = 0 To 8 
mass (n, 1) = Text1(1): mass (n, 2) = Text1(2)
mass (n, 3) = Text1(3): mass (n, 4) = Text1(4)
mass (n, 5) = Text1(5):mass (n, 6) = Text1(6)
' MoveNext - метод, обеспечивающий автоматический 
' переход к следующей записи
Data1.Recordset.MoveNext 
Next n
End Sub

' Методы MoveFirst, MoveLast, MoveNext, MovePrevious 
' находят в указанном объекте Recordset соответствующую
' запись и делают еe текущей

Private Sub Command3_Click()
Unload Me
Form2.Show
End Sub

Form2

' вывод данных двумерного массива на экран в 
' массив поля списка
Private Sub Command1_Click()
For i = 0 To 8
For j = 1 To 6
List1(i).List(j - 1) = mass (i, j)
Next j, i
End Sub

' нахождение максимальной цены продукта и вывод в
' поле метки результата
Private Sub Command2_Click() 
max = mass(0,3)
For k = 1 To 8
If mass (k, 3) > max Then max = mass (k, 3)
Next k
Label1.Caption = max
End Sub
антонина квасова
антонина квасова
Владимир Муратов
Владимир Муратов

По курсу Visual Basic где же взять материалы для практических работ? 

Светлана Ведяева
Светлана Ведяева
Россия, Саратов
Оксана Пагина
Оксана Пагина
Россия, Москва