Поиск

Полнотекстовый поиск:
Где искать:
везде
только в названии
только в тексте
Выводить:
описание
слова в тексте
только заголовок

Рекомендуем ознакомиться

Информатика->Курсовая работа
Цель маршрутизации - доставка пакетов по назначению с максимизацией эффективности. Чаще всего эффективность выражена взвешенной суммой времен доставки...полностью>>
Информатика->Курсовая работа
Все коммерческие организации действуют в конкретной рыночной среде. У всех организаций одна цель – получение прибыли. Одним участникам рынка достижени...полностью>>
Информатика->Реферат
Бурное развитие информационных технологий повлекло за собой создание множества искусственных языков, ориентированных на решение проблемы общения челов...полностью>>
Информатика->Курсовая работа
Между тем выяснилось, что Нойса в благородном деле создания первой микросхемы опередили. Еще летом 1958-го сотрудник Texas Instruments Джек Килби прод...полностью>>

Главная > Реферат >Информатика

Сохрани ссылку в одной из сетей:

Работа № 8

Средства VB 6 для создания, заполнения и обработки таблиц баз данных Microsoft Access

Цель работы: Изучение и использование средств, которыми располагают среда проектирования и язык VB 6, для работы с базами данных Microsoft Access. Исследование и использование инструмента VisData (Data Base ManagerДиспетчера баз данных) для создания файла базы данных и произвольного числа таблиц этой базы, а также стандартного элемента управления Data для заполнения полей таблиц значениями и нестандартного элемента MS Flex Grid для отображения заполненных таблиц на экранной форме. Исследование возможности использования в процедурах на языке VB 6 языка запросов SQL для обработки таблиц базы данных.

Контрольные вопросы:

  1. Как с помощью Диспетчера баз данных можно создать новый файл mdb для дальнейшего включения в него произвольного числа таблиц базы данных?

  2. Как создается новая таблица в уже созданном файле mdb? Как в таблицу включаются новые поля (столбцы)? Как определяется тип данных включаемого в таблицу поля?

  3. Что такое индекс и как с помощью Диспетчера баз данных можно создать индекс и включить его в таблицу?

  4. Как присоединить элемент управления Data (Данные) к одной из таблиц базы данных, содержащихся в файле mdb? Какие два свойства при этом необходимо означить?

  5. Какое значение свойства EOF Action элемента управления Data позволяет вносить новые записи в таблицу базы данных?

  6. Какие два свойства текстового поля отвечают за «привязку» этого поля к элементу управления Data? Как с помощью «привязанных» текстовых полей вносить данные в таблицу базы данных?

  7. Какое свойство элемента Data может иметь в качестве значения не только ссылку на реальную таблицу базы данных, но и выражение языка SQL, с помощью которого создается виртуальная таблица?

  8. Как и с помощью какого выражения SQL можно программно создать реальную таблицу в файле базы данных?

  9. Как и с помощью какого выражения SQL можно программно удалить все данные из реальной таблицы в файле базы данных?

Пример 8.1. В двух вариантах 1-го задания 7-й работы были рассмотрены две таблицы базы данных «Автосервис»:

  • таблица 7.1 «Автомобили»;

  • таблица 7.2 «Неисправности».

Для заполнения этих таблиц значениями, для их визуализации, а также для отработки запросов на SQL создается приложение, экранная форма которого в работающем состоянии показана на рис. 8.1.

Рис. 8.1. Экранная форма приложения для заполнения значениями двух таблиц файла mdb и для отработки запросов на SQL

В данном примере с помощью Диспетчера баз данных (VisData) среды проектирования VB 6 создается Access файл Автосервис.mdb с указанными двумя таблицами: Cars (Автомобили) и Disrepairs (Неисправности). Технология создания таблиц файла mdb в среде IDE VB 6 описана в пособии [2], стр. 133 – 139.

Для заполнения значениями 1-й таблицы используются текстовые поля Text1, Text2 и Text3, привязанные к элементу Data1, который, в свою очередь, привязан к таблице Cars (Автомобили) файла Автосервис.mdb.

Для заполнения значениями 2-й таблицы используются текстовые поля Text4, Text5 и Text6, привязанные к элементу Data2, который, в свою очередь, привязан к таблице Disrepairs (Неисправности) файла Автосервис.mdb. Технология «привязки» описана в учебном пособии [2] – стр. 140 – 145.

Для визуализации таблиц используются элементы из нестандартного класса «Гибкая сетка данных» (MS Flex Grid).

После заполнения таблиц пользователь может обратиться к базе данных с запросом на языке SQL. Для этой цели используется команда меню Query. Щелчок этой команды вызывает появление окна Inputbox (рис. 8.2), в котором, «по умолчанию», уже есть образец выражения SQL. Пользователь, разумеется, может ввести свой вариант запроса.

Рис. 8.2. Окно для ввода запроса на SQL

После ввода запроса и щелчка кнопки ОК происходит автоматическое формирование 3-й таблицы, запись SQL выражения в поле метки и отображение новой таблицы в гибкой сетке – элементе MSFlexGrid3 на экранной форме (см. рис. 8.1).

Опуская описание этапа проектирования интерфейса, сразу представим программный код данного приложения:

Private Sub Form_Load()

With MSFlexGrid1 ‘ Для таблицы Автомобили.

.ColWidth(0) = 500: .ColWidth(1) = 1200

.ColWidth(2) = 1500: .ColWidth(3) = 1000

End With

With MSFlexGrid2 ‘ Для таблицы Неисправности.

.ColWidth(0) = 500: .ColWidth(1) = 1000

.ColWidth(2) = 3000: .ColWidth(3) = 900

End With

With MSFlexGrid3 ‘ Для запроса «по умолчанию».

.ColWidth(0) = 500: .ColWidth(1) = 1500

.ColWidth(2) = 1200: .ColWidth(3) = 3000

.ColWidth(4) = 900: .ColWidth(5) = 1000

End With

End Sub

Private Sub mnuQuery_Click()

sSQL$ = InputBox("Введите запрос на SQL, " & _

"относительно двух таблиц базы данных", "SQL", _

"Select car_number, car_type, disrep_name, " & _

"repair_cost, Cars.disrep_code " & _

"From Cars Inner Join Disrepairs " & _

"On Disrepairs.disrep_code=Cars.disrep_code " & _

"Order By repair_cost")

Data3.RecordSource = sSQL

Data3.Refresh

Label1.Caption = " SQL: " & sSQL

End Sub

Пример 8.2. Рассмотрим приложение, которое демонстрирует действие массовых операций языка SQL. Для этого добавим на экранную форму примера 8.1 пару элементов, представленных на рис. 8.3. Добавим также команду меню Itogi, с помощью которой будет обрабатываться таблица «Неисправности».

Рис. 8.3. Вид фрагмента окна приложения с двумя новыми элементами: Data4 и MSFlexGrid4 для отображения результатов массовых операций

После щелчка команды Itogi элемент MSFlexGrid4 на экранной форме будет выглядеть так, как показано на рис. 8.3.

Разумеется, что элемент Data4, как и элемент Data3, должен быть привязан к тому же файлу mdb, что и элементы Data1 и Data2. А его свойство RecordSource будет означено в ходе выполнения следующей программы:

Private Sub mnuItogi_Click()

sSQL$ = "Select Count(repair_cost), " & _

"CCur(Min(repair_cost)), " & _

"CCur(Max(repair_cost)), " & _

"CCur(Sum(repair_cost)), " & _

"CCur(Avg(repair_cost)) " & _

"From Disrepairs"

Data4.RecordSource = sSQL

Data4.Refresh

With MSFlexGrid4

.Row = 0

.Col = 0: .Text = "Показатель"

.Col = 1: .Text = "Количество"

.Col = 2: .Text = "Минимум"

.Col = 3: .Text = "Максимум"

.Col = 4: .Text = "Сумма"

.Col = 5: .Text = "Среднее"

.Row = 1

.Col = 0: .Text = "Значение"

End With

End Sub

В ходе выполнения данной работы студенты должны выполнить 2 задания.

Задание 1. В процессе выполнения задания студенты решают задачу создания не виртуальной таблицы базы данных, как это было в примере 8.1, а реальной таблицы с именем CarDis – в файле mdb. В эту таблицу с помощью SQL запроса должны быть внесены данные из исходных двух таблиц в соответствии с предлагаемым вариантом.

Указание 1. Для создания новой таблицы можно спроектировать команду меню Create Table. Следует, однако, помнить, что эта команда однократного действия и после создания таблицы эту команду можно либо «закомментировать», либо уничтожить. Код процедуры для этой команды следующий:

Private Sub mnuCreateTable_Click()

sSQL$ = "Create Table CarDis (car_number Text(20), " & _

" car_type Text(20), disrep_name Text(50), " & _

" repair_cost Currency, disrep_code Long)"

Data3.Database.Execute sSQL

End Sub

Указание 2. В силу того, что при многократных запусках программы в новую таблицу записи будут добавляться (старые записи при этом удаляться не будут), для очистки таблицы предлагается создать команду меню Delete Table:

Private Sub mnuDeleteTable_Click()

sSQL$ = "Delete From CarDis"

Data3.Database.Execute sSQL

End Sub

Кроме того, необходимо внести небольшие коррективы в код процедуры mnuQuery_Click (см. пример 8.1): В начало процедуры следует вставить оператор:

mnuDeleteTable_Click

А в конец процедуры следует вставить операторы:

sSQL = "Insert Into CarDis " & sSQL

Data3.Database.Execute sSQL

Вариант 1. В реальную таблицу CarDis внести записи, соответствующие запросу примера 8.1, но с ограничением: стоимость ремонта должна быть не менее 500 рублей, а записи должны быть отсортированы по убыванию стоимости ремонта.

Вариант 2. В реальную таблицу CarDis внести записи, соответствующие запросу примера 8.1, но с ограничением: стоимость ремонта должна быть не более 500 рублей, а записи должны быть отсортированы по возрастанию стоимости ремонта.

Задание 2. В ходе выполнения задания студенты, на базе примера 8.2 и результата выполнения задания 1 изучают действие массовых операций языка SQL на записях вновь построенной таблицы CarDis базы данных «Автосервис».

Указание. В SQL выражении, фигурирующем в коде процедуры mnuItogi_Click, следует изменить только имя таблицы после слова From.

Вариант 1. Фрагмент экранной формы с результатами должен иметь вид, представленный на рис. 8.4:

Рис. 8.4. Фрагмент экранной формы с элементами FlexGrid3 и FlexGrid4 для демонстрации отработки SQL запросов по 1-му варианту

Вариант 2. Фрагмент экранной формы с результатами должен иметь вид, представленный на рис. 8.5:

Рис. 8.5. Фрагмент экранной формы с элементами FlexGrid3 и FlexGrid4 для демонстрации отработки SQL запросов по 2-му варианту

К О Н Е Ц

8


Загрузить файл

Похожие страницы:

  1. База данных (4)

    Реферат >> Информатика
    ... информационных массивов в ИС являются базы данных. Базу данных можно определить как совокупность ... надежность обработки данных. - базы данных (datebase) рассматриваемые СУБД опять сходятся. Базой данных называется коллекция данных, рассматриваемая ...
  2. База данных (5)

    Реферат >> Информатика
    ... известных баз данных с использо­ванием их собственных драйверов. Для программирования баз данных ... БАЗОЙ ДАННЫХ. ГЕНЕРАЦИЯ ОТЧЕТОВ. Обработка информации однотабличной базы данных Помимо хранения, редактирования, обновления и анализа данных в базе данных ...
  3. База данных (6)

    Реферат >> Информатика
    ... СУБД – это описание структуры базы данных, обработка данных и управление данными. База данных – это совокупность сведений о ... форма); ввод данных в базу данных с помощью форм; коррекция данных; реализация запросов к базе данных; формирование и вывод ...
  4. База данных (7)

    Курсовая работа >> Информатика, программирование
    ... СУБД – это описание структуры базы данных, обработка данных и управление данными. База данных – это совокупность сведений о реальных ... данных Рис. 5 Схема данных Схема данных отображает связь таблиц в базе данных «Продажи книг». 1.3 Формы В базе данных ...
  5. База данных Access. Особенности работы в многопользовательском режиме

    Реферат >> Информатика
    ... конфигурации удаленными являются как данные, так и механизм баз данных. Если данными управляет SQL Server ... информацию о применяемых в базе данных блокировках, а также о ее пользователях. При закрытии базы данных файл удаляется ...
  6. Бази даних у Internet

    Реферат >> Астрономия
    ... ії з базою даних. Намір інтерфейсу - забрати дані з форми, проаналізувати їх, і передати запит до бази даних. Якщо база даних ... ми використовуємо розмежовану базу даних, найлегше прочитати з повної бази даних. База даних поля фіксованої довжини ...

Хочу больше похожих работ...

Generated in 0.0015730857849121