Создание и заполнение баз данных

Автор работы: Пользователь скрыл имя, 20 Марта 2011 в 21:29, курсовая работа

Описание работы

Как известно, большинство современных компьютеров работают под управлением операционной системы Windows и оснащены, как правило, пакетом приложений Word, Excel, Access и Visual Basic семейства MS Qffice. В настоящее время практически повсеместно используется пакет прикладных программ Microsoft Office, в стандартный набор которого входит MS Access – мощная система управления базами данных. Access интегрирован с прочими приложениями пакета, что позволяет применять богатые возможности компонентов.

Содержание работы

Введение…………………………………………………………………………. .2
1.Создание и заполнение базы данных…………………………………………..3
1.1.Создание БД……………………………………………………….. 3
1.2.Вывод таблиц в формы……………………………………………6
1.3.Формирование различного вида запросов………………………. 7
1.4.Вывод запросов на формы…………………………………….. …10
1.5.Создание отчёта с итогами…………………………………….. ...12
1.6.Создание меню управления базой данных……………………….13
2.Экспорт данных в Visual Basic 6.0 (с использованием элементов управления DATA и MSFlexGrid)……………………………………………………………15
Заключение………………………………………………………………………25
Список использованной литературы…………………………………………..26

Файлы: 1 файл

ОТЧЁТ КП.doc

— 1.61 Мб (Скачать файл)
 

Программный код формы:

'ОТОБРАЖЕНИЕ  ТАБЛИЦ

Private Sub Command1_Click()

    Label.Caption = "Таблица №1"

    Grid.Clear     'очистка сетки

    Grid.Cols = 8

    Grid.Rows = Data1.Recordset.RecordCount + 1 'устанавливаем количество строк в гибких сетках равным количеству записей в таблице + 1 (для заголовков столбцов)

    Data1.Recordset.MoveFirst   'переход к первой записи

    For I = 1 To Data1.Recordset.RecordCount    'цикл отображения записей таблицы в гибких сетках

        For J = 1 To 8      'по столбцам записи таблицы

          If I = 1 Then Grid.TextMatrix(0, J - 1) = Data1.Recordset.Fields(J - 1).Name

            Grid.TextMatrix(I, J - 1) = Data1.Recordset.Fields(J - 1)

        Next J

        Data1.Recordset.MoveNext  'переход к следующей записи таблицы 1

    Next I

    Data1.Recordset.MoveFirst   'возврат к первой записи

    For J = 1 To 8          'выравниваем ширину столбцов

        Grid.ColWidth(J - 1) = Grid.Width / 9

    Next J

End Sub 

Private Sub Command4_Click()

    Label.Caption = "Таблица №2"

    Grid.Clear     'очистка сетки

    Grid.Cols = 8

    Grid.Rows = Data2.Recordset.RecordCount + 1 'устанавливаем количество строк в гибких сетках равным количеству записей в таблице + 1 (для заголовков столбцов)

    Data2.Recordset.MoveFirst   'переход к первой записи

    For I = 1 To Data2.Recordset.RecordCount    'цикл отображения записей таблицы в гибких сетках

        For J = 1 To 8      'по столбцам записи таблицы

          If I = 1 Then Grid.TextMatrix(0, J - 1) = Data2.Recordset.Fields(J - 1).Name

            Grid.TextMatrix(I, J - 1) = Data2.Recordset.Fields(J - 1)

        Next J

        Data2.Recordset.MoveNext  'переход к следующей записи таблицы 1

    Next I

    Data2.Recordset.MoveFirst   'возврат к первой записи

    For J = 1 To 8          'выравниваем ширину столбцов

        Grid.ColWidth(J - 1) = Grid.Width / 9

    Next J

End Sub 

'ДОБАВЛЕНИЕ  ЗАПИСЕЙ

Private Sub Command2_Click()      'в таблицу 1

    Dim Reply As VbMsgBoxResult

 Reply = MsgBox("Если будете вводить новую запись, нажмите кнопку OK", _

    vbOKCancel, "Ввод новой записи")

    If Reply = vbOK Then

    Text1(0).SetFocus       'Остановка, текстовые окна пустые, в них нужно ввести запись

    Data1.Recordset.AddNew

    End If

    MsgBox ("После ввода записи нажмите левую стрелку элемента Data")

End Sub 

Private Sub Command5_Click()      'в таблицу 2

    Dim Reply As VbMsgBoxResult

 Reply = MsgBox("Если будете вводить новую запись, нажмите кнопку OK", _

    vbOKCancel, "Ввод новой записи")

    If Reply = vbOK Then

    Text2(0).SetFocus       'Остановка, текстовые окна пустые, в них нужно ввести запись

    Data2.Recordset.AddNew

    End If

    MsgBox ("После ввода записи нажмите левую стрелку элемента Data")

End Sub 

'УДАЛЕНИЕ ЗАПИСЕЙ

Private Sub Command3_Click()   'из таблицы 1

    Dim Reply As VbMsgBoxResult

    Reply = MsgBox("Если будете удалять текущую запись, нажмите кнопку OK", vbOKCancel, "Удаление текущей записи")

    If Reply = vbOK Then

    Data1.Recordset.Delete        'удаление записи

    Data1.Recordset.MoveFirst     'переход к первой записи

    End If

    Command1_Click

End Sub 

Private Sub Command6_Click()   'из таблицы 1

    Dim Reply As VbMsgBoxResult

    Reply = MsgBox("Если будете удалять текущую запись, нажмите кнопку OK", vbOKCancel, "Удаление текущей записи")

    If Reply = vbOK Then

    Data2.Recordset.Delete        'удаление записи

    Data2.Recordset.MoveFirst     'переход к первой записи

    End If

    Command3_Click

End Sub 

Отображение таблицы 1:

 
 

Отображение таблицы 2:

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

     3. Для  каждого города и района вывести информацию о ресурсах с минимальным расходом.(ресурс, расход).  

Private Sub Command7_Click()

    Label.Caption = "Информация о ресурсах с  минимальным расходом"

    Grid.Clear     'очистка сетки

    Grid.Cols = 5

    Grid.Rows = Data2.Recordset.RecordCount + 1 'устанавливаем количество  строк в гибкой сетке равным  количеству записей в таблице  + 1 (для заголовков столбцов)

    Grid.FormatString = "^Код города|^код района|название района|^№ ресурса|^расход"

    Data2.Recordset.MoveFirst   'переход к первой записи

    For I = 1 To Data2.Recordset.RecordCount

        Min = Data2.Recordset.Fields(3): nommin = ""

        For J = 3 To 7      'по столбцам записи таблицы

            If Data2.Recordset.Fields(J) < Min Then Min = Data2.Recordset.Fields(J): nommin = ""

    If Data2.Recordset.Fields(J) = Min Then nommin = nommin & Str(J - 2) & "   "

        Next J

        Grid.TextMatrix(I, 0) = Data2.Recordset.Fields(0)

        Grid.TextMatrix(I, 1) = Data2.Recordset.Fields(1)

        Grid.TextMatrix(I, 2) = Data2.Recordset.Fields(2)

        Grid.TextMatrix(I, 3) = nommin

        Grid.TextMatrix(I, 4) = Min

        Data2.Recordset.MoveNext  'переход к следующей записи таблицы 1

    Next I

    For J = 1 To 5          'выравниваем  ширину столбцов

        Grid.ColWidth(J - 1) = Grid.Width / 6

    Next J

    Data2.Recordset.MoveFirst   'возврат к первой записи

End Sub 
 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

     4. По выбираемым ресурсам вывести информацию о районе и городе с максимальным расходом. 

Private Sub Command8_Click()

    Grid.Cols = 4

    Grid.FormatString = ""

    res = InputBox("Введите номер ресурса от 1 до 5", "Ввод данных")

    Data2.Recordset.MoveFirst       'переход к первой записи таблицы1

    Grid.Rows = 1 'количество строк в гибкой сетке

    Grid.FormatString = "Код города|Код района|Название города|Название

                         _района"

    For J = 1 To 4          'выравниваем ширину столбцов

        Grid.ColWidth(J - 1) = Grid.Width / 5

    Next J

    Max = 0

    For I = 1 To Data2.Recordset.RecordCount

        If Data2.Recordset.Fields(res + 2) > Max Then Max =

               _Data2.Recordset.Fields(res + 2): Grid.Rows = 1

        If Data2.Recordset.Fields(res + 2) = Max Then

            Grid.Rows = Grid.Rows + 1

            Grid.TextMatrix(Grid.Rows - 1, 0) = Data2.Recordset.Fields(0)

            Grid.TextMatrix(Grid.Rows - 1, 1) = Data2.Recordset.Fields(1)

            Grid.TextMatrix(Grid.Rows - 1, 3) = Data2.Recordset.Fields(2)

            Data1.Recordset.MoveFirst 'переход к первой записи таблицы1

                 For J = 1 To Data1.Recordset.RecordCount    'по записям ищем

                 _название  города по его коду

                    If Data1.Recordset.Fields(0) = Data2.Recordset.Fields(0) Then

    _Grid.TextMatrix(Grid.Rows - 1, 2) = Data1.Recordset.Fields(1)

                 Data1.Recordset.MoveNext    'переходим к следующей записи

                         _таблицы2

                 Next J

        End If

        Data2.Recordset.MoveNext        'переходим к следующей записи таблицы1

    Next I

    Label.Caption = "По ресурсу " & Str(res) & " максимальный расход " & Str(Max) & " был в:"

End Sub 

Private Sub Command9_Click()

    End

End Sub 
 

 

 
 
 
 
 
 
 
 
 
 
 

Заключение. 

     В ходе данного курсового проекта, поставленная цель была реализована (пункты 1 и 2 задания по КП были выполнены на Access.,  3 и 4 на Visual Basic.(обработка БД Access)). Были выполнены входящие в индивидуальное задание задачи по следующим разделам VB: программирование линейных алгоритмов, программирование разветвляющихся алгоритмов, программирование циклических алгоритмов, создание процедур и функций пользователя.  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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

  1. Методические  указания к выполнению лабораторных работ по дисциплине “Компьютерная  подготовка” с применением СУБД ACCESS. Выпуск 2. / Сост.: А.Е. Макаренко, Т.В. Бугреева, И.А. Ильина, Е.В. Лемешко, М.В. Седун; ГУУ. – М., 2002. – 48 с.
  2. Методические указания к выполнению лабораторной работы по дисциплине “Компьютерная подготовка” с применением СУБД ACCESS. Выпуск 1. /
  3. Сост.: Т.В. Бугреева, И.А. Ильина, А.Е. Макаренко, Е.В. Лемешко, М.В. Седун; ГУУ. – М., 2002. – 32 с.
  4. Несмеянов И.А., Барковский В.В., Венчковский Л.Б. Использование языка Visual Basic 6.0 при создании программных средств для обработки баз данных: Учебно-практическое пособие – 2-е изд., испр./ ГУУ. – М., 2006. – 180 с.

Информация о работе Создание и заполнение баз данных