Опубликован: 04.07.2006 | Доступ: свободный | Студентов: 5486 / 633 | Оценка: 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 где же взять материалы для практических работ?