Лекция 8 презентация

Содержание

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

Слайд 1Лекция 8
Кафедра Прикладной математики
М-703, тел. 362-79-62
К.т.н., профессор Глаголев Виктор Борисович,
комн. Ж-405б,

тел. 362-73-28
http://glagvik.narod2.ru/index.htm

Базы данных
Коллекции
Терминология БД
Связь между таблицами
База данных «Библиотека»
Объект DataGridView

Отладка
Виды ошибок
Режимы среды
Точка останова
Пошаговое выполнение программы


Слайд 2Коллекции
Коллекция – это группа объектов, каждый из которых может быть любого

типа. Коллекция позволяет производить некоторые действия со всеми входящими в коллекцию объектами.
Коллекция в свою очередь является объектом, она обладает свойствами и методами.
Так свойство Count содержит число объектов коллекции.

Слайд 3Некоторые методы коллекций:


Слайд 4Коллекция должна быть объявлена программистом с применением синтаксиса:

Public/Private/Dim ИмяКоллекции As _
New

Collection

Слайд 5Для обработки всех элементов коллекции в VB имеется специальная инструкция цикла

For Each … In … Next (для каждого … в …).
Синтаксис этой инструкции:

For Each Экземпляр In ИмяКоллекции
[Инструкции]
[Exit For]
[Инструкции]
Next

Слайд 6Эта инструкция цикла обеспечивает выполнение группы инструкций для каждого экземпляра коллекции.

Эта

инструкция цикла может быть применена также для массива.

Экземпляр – это имя переменной типа Object.

Допускается досрочный выход из цикла с помощью инструкции Exit For.

Слайд 7Рассмотрим пример.
Объявлены коллекция и три переменные, которые включены в коллекцию. Затем

все содержимое коллекции выведено в текстовом поле.

Private Sub Button1_Click(ByVal sender As _
System.Object, ByVal e As System.EventArgs) _
Handles Button1.Click
Dim List As New Collection
Dim i As Integer
Dim s As Single
Dim st As String
Dim v As Object

Слайд 8 i = 3
s

= 1.5
st = "Test"
List.Add(st)
List.Add(s)
List.Add(i)
For Each v In List
TextBox1.AppendText(v.ToString & vbCrLf)
Next
End Sub

Слайд 9 Результат работы подпрограммы Button1_Click


Слайд 10 В VB определены две встроенные коллекции объектов,

к которым можно обращаться без их объявления:

Forms. В эту коллекцию включены все загруженные формы проекта.

Controls. Коллекция включает все управляющие элементы всех форм.


Слайд 11Терминология баз данных
База данных предназначена для хранения и извлечения сложной

структурированной информации.
Базы данных поддерживаются специальными программами, которые называются системами управления базами данных (СУБД).
Различают базы данных иерархические, сетевые и реляционные.
Наиболее распространены реляционные базы данных.

Слайд 12В реляционных базах данные хранятся в связанных таблицах, в каждой из

которых хранится информация, относящаяся к одной сущности.
Так, в базе данных, предназначенной для хранения информации о книгах библиотеки, будет:
одна таблица Книги с перечнем изданий;
еще одна таблица Авторы с информацией об авторах;
еще одна таблица Издательства с информацией об издательствах.

Слайд 13В первой таблице для каждой книги может храниться ее название, количество

страниц, аннотация.
Во второй будут храниться данные об авторах изданий: фамилия, имя, отчество. Если информация об авторе книги будет храниться в одной таблице вместе с ее названием, то данные об авторах будут повторяться. Ведь один и тот же автор может быть автором нескольких книг. Это бы привело к дублированию информации, что неизбежно приводит к несогласованности данных.

Слайд 14Строка таблицы базы данных называется записью.
Отдельная часть записи, принадлежащая к

конкретной колонке таблицы, называется полем.

Слайд 15Связь между таблицами
Каждая таблица должна иметь столбец, значения данных в котором

не повторяются. В базе данных такие сведения носят название первичного ключа таблицы. Первичный ключ применяется для связи с другими таблицами. Он не может не иметь значения. Это значение должно быть уникальным в пределах столбца таблицы, его нельзя изменять.
В качестве первичного ключа удобно применять счетчик.

Слайд 16Вернемся к рассмотренному примеру о книгах. Таблица книг связана с таблицей

авторов. Но один и тот же автор может быть автором нескольких книг. Такая связь между таблицей книг и таблицей авторов представляет собой отношение «один-ко-многим». Для реализации такой связи между таблицей книг и таблицей авторов в таблице книг следует поместить поле вторичного ключа, в котором для каждой книги указывается значение первичного ключа соответствующего автора в таблице авторов.

Слайд 17Учтем, что у книги может быть не один, а несколько авторов.

С другой стороны, отдельный автор может быть автором нескольких книг. Следовательно, для каждой записи таблицы книг может существовать несколько записей в таблице авторов. И, наоборот, для каждой записи в таблице авторов может существовать несколько записей в таблице книг.
Такой тип связи между таблицами называется отношением «многие-ко-многим».

Слайд 18Это проблема. Попытку сохранить данные о книге в одной записи, добавив

поля для каждого отдельного автора книги, нельзя признать удачной. Сколько бы не было предусмотрено возможностей включить для книги новое поле для дополнительного автора, этих полей может оказаться недостаточно.
И в то же время, когда авторов книги немного, лишние поля останутся пустыми, что приведет к нерациональному использованию памяти.

Слайд 19Решением этой проблемы является создание третьей, связующей, таблицы, имеющей всего два

поля. С помощью связующей таблицы отношение «многие-ко-многим» разбивается на два отношения «один-ко-многим». В первое поле связующей таблицы записывается первичный ключ книги. Во второе поле записывается первичный ключ автора.

Слайд 20Если у книги несколько авторов, то запись с первичным ключом книги

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

Слайд 21



Тип связи «многие-ко-многим»


Слайд 22Модель ADO.NET
VB.NET позволяет отображать, анализировать и изменять информацию в существующих базах

данных и для этой цели предлагает модель доступа к данным, которая называется ADO.NET.

Слайд 23Эта модель позволяет работать с мощными базами данных, созданными одной из

СУБД, например: Microsoft Access, Microsoft FoxPro, Paradox, Oracle и Microsoft SQL Server.
Далее работа с базой данных будет рассмотрена на примере базы данных Access. Работа с базами данных другого типа проходит аналогично.

Слайд 24В ADO.NET для получения и изменения информации в базе данных необходимо:
Установить

соединение (Connection) с базой данных.
Создать адаптер данных (Data adapter). Управляет получением данных из базы данных и обратной отправкой изменений в данных.
Создать набор данных (Dataset). Представляет копию данных одной или нескольких таблиц, с которыми Вы планируете работать.

Слайд 25База данных «Библиотека»
В качестве примера рассмотрим учебную базу данных, содержащую информацию

о книгах библиотеки, созданную с помощью СУБД Access. Работа с базами данных другого типа проходит аналогично.
Вся информация в этой базе данных содержится в четырех таблицах: Книги, Авторы, Издательства и связующей таблице КнгАвт.

Слайд 26Таблица Книги


Слайд 27Таблица Авторы


Слайд 28Таблица Издательства


Слайд 29Связующая таблица КнгАвт


Слайд 30Связь таблиц


Слайд 31Проект библиотека
Сначала был создан новый проект с именем Библиотека2 по

шаблону Windows Forms Application.
Чтобы каждая из четырех таблиц базы данных могла размещаться на отдельной форме следует добавить к проекту еще три формы Form2, Form3 и Form4. Чтобы видеть название таблицы, которая будет отображаться на соответствующей форме, следует имя таблицы задать свойству Text формы: Form1.Text – Книги, Form2.Text – Авторы, Form3.Text – Издательства и Form4.Text – КнгАвт.

Слайд 32Экземпляр формы Form1 создается системой автоматически. Для создания экземпляра каждой из

остальных трех форм следует добавить в проект модуль Module1:

Module Module1
Public frm2 As New Form2
Public frm3 As New Form3
Public frm4 As New Form4
End Module

Слайд 33Сначала следует выполнить команду View, Server Explorer (обозреватель серверов).
Затем на панели

инструментов появившегося окна Server Explorer нужно щелкнуть на кнопке Connect to Database (подключиться к базе данных).

Connect to Database (подключиться к базе данных)

Установка соединения с базой данных


Слайд 34Откроется окно Add Connection:


Слайд 35Теперь в открывшемся окне Add Connection (добавить соединение) нужно выбрать тип

базы данных, с которой будет установлена связь. В поле Data Source (источник данных) этого окна должно быть установлено значение Microsoft Access Database File (OLE DB). Если это не так, то нужно щелкнуть справа от этого поля на кнопке Change (изменить) и в открывшемся диалоговом окне Change Date Source (предпочитаемый источник данных) установить требуемый тип базы данных Microsoft Access Database File. Закройте окно Change Date Source щелком на кнопке OK.

Слайд 36В диалоговом окне Add Connection следует щелкнуть на кнопке Browse и

указать путь к файлу базы данных Библиотека2.
Ничего больше не изменяя в окне Add Connection, нужно щелкнуть на кнопке Test Connection (проверить подключение). Visual Studio попытается установить соединение с базой данных. Если появится сообщение Test Connection Succeeded (проверка подключения выполнена), это будет означать, что провайдер выбран правильно и база данных имеет правильный формат. Окно с сообщением следует закрыть нажатием на кнопку ОК, а также нажатием на кнопку ОК следует закрыть окно Add Connection.

Слайд 37Создание набора данных DataSet
Рассмотрим один из возможных способов создания набора

данных:
1. Следует открыть окно Data Sources (источники данных) щелчком на вкладке Data Sources. Обычно она находится справа под окном решений Solution Explorer.
2. В окне Data Sources нужно щелкнуть на ссылке Add New Data Source (добавить новый источник данных).

Слайд 383. В открывшемся окне Data Source Configuration Wizard (мастер конфигурации источника

данных) следует выделить тип источника DataBase и щелкнуть на кнопке Next (дальше).
В открывшемся окне следует снова щелкнуть на кнопке Next и щелчком на кнопке Нет закрыть окно с предложением копировать данные. Снова нужно щелкнуть на кнопке Next.

Слайд 394. Теперь следует указать таблицы и поля, данные из которых Вы

хотите иметь в наборе данных. Для этого раскройте узлы Tables (таблицы), Авторы, Книги, Издательства, КнгАвт и поставьте галочки напротив всех четырех таблиц, со всеми полями которых будет связан создаваемый набор данных.
Окно мастера конфигурации источника данных должно соответствовать изображению на следующем слайде.

Слайд 41Затем нажатием на кнопке Finish нужно завершить создание набора данных.
В окне

Data Sources, а также в окне решений Solution Explorer отобразится созданный набор данных – объект Библиотека2DataSet.

Слайд 42 При переносе проекта на другой компьютер может возникнуть необходимость изменения пути

к файлу базы данных. В этом случае необходимо внести коррекцию в файл app.config конфигурации приложения.
Открывается этот файл двойным щелчком на его отображении в окне решений (Solution Explorer). В этом файле путь к базе данных прописан в седьмой строке кода сверху между тегом " и тегом ".

Слайд 43Отображение информации с помощью объекта DataGridView
Элемент управления DataGridView (отображение сетки

данных) отображает данные таблицы в виде строк и столбцов.
Применим четыре объекта DataGridView для отображения таблицы Книги, таблицы Авторы, таблицы Издательства и таблицы КнгАвт базы данных Библиотека2. Эти управляющие элементы могут быть получены простым перетаскиванием на форму таблиц из окна Data Sources.

Слайд 44Из окна Data Sources нужно поочередно перетащить на соответствующую форму каждую

из таблиц: Книги, Авторы, Издательства и КнгАвт. В результате этих действий на каждой форме появится навигатор BindingNavigator (панель в верхней части формы) и сетка данных.

Слайд 45Если после этого посмотреть на код каждой формы проекта, то можно

увидеть, что система автоматически создала две подпрограммы:


Слайд 46Поясним назначение этого сгенерированного системой кода на примере кода формы Form1.

Подпрограмма

Form1_Load при загрузке формы Form1 обеспечивает заполнение таблицы Книги набора данных Библиотека2DataSet данными из базы данных (применяется метод Fill).

Слайд 47 Подпрограмма КнигиBindingNavigatorSaveItem_Click выполняет сохранение данных после их изменения в отображаемой таблице

КнигиDataGridView.
Запускается эта подпрограмма при нажатии на кнопке КнигиBindingNavigatorSaveItem, находящейся на панели навигации Form1.

Слайд 48Сохранение данных выполняется за три шага:
1. Проверка корректности введенных данных: Validate().
2.

Сохранение изменений в наборе данных: EndEdit().
3. Обновление записей в базе данных:
Me.TableAdapterManager.UpdateAll _
(Me.Библиотека2DataSet).

Теперь, наконец, если запустить проект, то можно убедиться, что можно видеть содержащуюся в базе данных информацию. Эту информацию в базе данных можно редактировать, добавлять и удалять.

Слайд 49Вид форм показан на следующих слайдах. Записи можно сортировать по значениям

в соответствующих полях.

Слайд 53Изменение информации в базе данных
Для полноценной работы с базой данных кроме

отображения ее содержимого, необходимо иметь возможность исправлять обнаруженные ошибки, добавлять новую информацию, а также удалять устаревшую. Если в объекте DataGridView сделаны изменения данных, то эти изменения сделаны лишь в наборе данных. В самой же базе данных эти изменения еще не учтены. Для сохранения этих изменений в базе данных предусмотрена кнопка Save Data (сохранить данные), находящаяся на панели навигации формы.

Слайд 54Для проверки возможности изменения записей в базе данных нужно запустить проект.

Ваш экран будет выглядеть примерно так, как показано на рисунке:

Слайд 55В режиме выполнения проекта Вы можете изменять ширину столбцов сетки данных,

перетаскивая их границы в заголовке таблицы.

Ширину столбцов можно менять и в режиме разработки. Она задается значением свойства Width при работе в окне Edit Columns.

Можно использовать функцию автоматической сортировки. Щелчок в заголовке поля приводит к сортировке строк по этому полю. Последующий щелчок в заголовке поля приведет к сортировке в обратном направлении.

Слайд 56Возможно добавление новой записи. При этом следует придерживаться определенного порядка выполнения

изменений.
Пусть требуется добавить в базу данных данные о книге: Якушева Нина, Visual Basic.NET, МЗ ПРЕСС, 2003. 100 руб., 2 экземпляра.
Сначала следует добавить запись в таблице Издательства. Для этого нужно щелкнуть в ячейке последней строки, которая содержит слева от строки значок звездочки. Закончив ввод названия издательства, установите курсор в любой другой строке таблицы. При этом сделанное изменение из сетки данных будет передано в набор данных.

Слайд 57Для передачи сделанного изменения из набора данных в базу данных нужно

нажать на кнопку навигатора Save Data.
Затем следует аналогично добавьте одну запись или несколько записей (по числу авторов книги) записей в таблице Авторы. Сначала в соответствующем поле нужно ввести фамилию автора, затем ввести его имя. Для передачи сделанного изменения из набора данных в базу данных нужно нажать на кнопку навигатора Save Data.

Слайд 58В третью очередь следует добавить запись в таблице Книги и сохранить

ее в базе данных. Нужно заполнить все поля этой записи. В поле Изд-во следует выбрать соответствующие данные из выпадающих списков.
И, наконец, следует сделать одну или несколько (по числу авторов книги) записей в таблице КнгАвт и сохранить их в базе данных.

Слайд 59Удаление записей из базы данных выполняется в обратном порядке. Первой должна

быть удалена запись из таблицы КнгАвт. Для этого следует щелкнуть слева от удаляемой записи, тем самым выделив ее всю, и нажать на кнопке навигатора Delete. Для сохранения изменений в базе данных следует снова нажать на кнопку Save Data. Затем следует, соблюдая указанную последовательность, удалить записи в таблицах Книги, Издательства, Авторы.

Слайд 60Возможно изменение информации в любом поле. Для этого следует выделить поле,

нажать на кнопку Delete и ввести новую информацию. После изменения информации поля, эти изменения передаются в набор данных при переходе на другое поле. Для передачи сделанных изменений из набора данных в базу данных следует нажать на кнопке Save Data на панели навигатора.

Слайд 61Отладка
Отладка – это устранение в программе причин, возникновения ее некорректного выполнения,

а также применение защиты от некорректных действий пользователя.
Программа может не быть корректной по следующим причинам:
Синтаксические ошибки (состоят в нарушении правил синтаксиса).
Логические ошибки.
Исключения (невозможно продолжение корректного выполнения программы).

Слайд 62О синтаксических ошибках среда сообщает на этапе ввода программного кода. Те

части кода, где обнаружены синтаксические ошибки, среда VB.NET подчеркивает синей волнистой линией, сопровождая подсказкой существо ошибки. Это упрощает обнаружение и исправление синтаксических ошибок.

Слайд 63Исключения предотвратить сложнее. Они могут быть порождены не только ошибками кода,

но и неадекватными действиями пользователей. Вот лишь несколько примеров:
Попытка открыть несуществующий файл.
Попытка деления числа на нуль.
Выход аргумента функции за пределы области определения функции.
Переполнение разрядной сетки в случае целочисленных данных.
Ввод символьных данных вместо ожидаемых числовых (или наоборот).

Слайд 64Самыми сложными для устранения среди всех возможных являются логические ошибки. При

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

Слайд 65Тестирование состоит в прогоне программы на таких исходных данных, для которых

результаты получены заранее вручную.
VB предлагает некоторые эффективные инструменты для поиска источников ошибок.

Слайд 66Режимы среды VB
Среда VB.NET может находиться в одном из трех состояний:
Design

(проектирование).
Running (выполнение).
Debugging (пауза).

Слайд 67Режим паузы
Приложение запускается нажатием клавиши F5 или кнопки

Start Debugging панели инструментов среды VB и оказывается в режиме выполнения.
Переход в режим паузы из режима выполнения выполняется щелчком на кнопке Break All стандартной панели инструментов.

Слайд 68Недостаток такого способа перехода в том, что заранее не известно, при

выполнении какой инструкции кода будет нажата кнопка Break All и произойдет переход в режим паузы.
В режиме паузы можно выбирать один из вариантов: продолжать выполнение программы или перейти в режим проектирования.

Слайд 69Из режима паузы в режим выполнения можно перейти, нажав повторно клавишу

F5 или щелкнув на кнопке Continue. Обратите внимание, что в режиме паузы кнопка Start Debugging носит название Continue.

Название текущих режимов Running и Debugging отображается в квадратных скобках в строке заголовка VB.

Слайд 70В режим паузы вы попадаете и тогда, когда во время выполнения

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

Слайд 71Большое преимущество режима паузы заключается в том, что выполнение программы приостанавливается

в месте возникновения ошибки.
Другим важным моментом является то, что при этом сохраняются значения всех текущих переменных и их можно увидеть.
В среде разработки VB инструменты поиска ошибок объединены на стандартной панели инструментов для доступа к основным средствам отладки.

Слайд 72Точка останова
Есть еще одна возможность переключения приложения в режим паузы. Это

возможно благодаря точке останова (Breakpoint).
Точка останова – это выделенная строка программы, на которой автоматически останавливается выполнение программы. По достижении этой строки программы VB переходит в режим паузы.

Слайд 73Если щелкнуть левой кнопкой мыши на полосе индикатора (серая вертикальная полоса

слева от программного кода), то в этом месте появится красная точка и находящаяся рядом строка закрашивается красным цветом.
Точки останова предназначены для принудительной остановки программы в нужном месте и перехода в режим паузы. В результате становятся доступными все средства отладки.

Слайд 75В режиме паузы VB особым образом выделяет строку, которая должна выполняться

следующей. Сама строка выделяется желтым цветом, а на полосе индикатора рядом с ней появляется желтая стрелка.
Если выполнение программы прерывается в точке останова, то оба выделения комбинируются.

Слайд 76Чтобы продолжить выполнение программы с любой другой строки, необходимо желтую стрелку

на полосе индикатора просто перетащить мышью на нужную строку.

Слайд 78Пошаговое выполнение программы
Если программа находится в режиме паузы, то она будет

работать медленнее, так как все строки выполняются по шагам. При этом можно непосредственно наблюдать за результатами выполнения каждой строки. Пошаговое выполнение является важным средством поиска ошибок и отладки программы. Существует несколько различных команд пошагового выполнения.

Слайд 79Шаг с заходом (Step into)
Для выполнения следует нажать кнопку Step into

на стандартной панели инструментов. При пошаговом выполнении строки кода выполняются одна за другой. После выполнения одной строки кода маркер следующей строки перемещается на одну строку.

Слайд 80Шаг с обходом (Step Over)
Шаг с обходом подобен шагу с заходом.

Различие проявляется только при вызове текущей процедурой других процедур. Если при шаге с заходом осуществляется переход в вызываемую процедуру, то шаг с обходом выполняет вызов процедуры как единичный оператор.



Слайд 81Шаг с обходом выполняется нажатием кнопки Step Over на

стандартной панели инструментов. Этот вид пошагового выполнения представляет интерес при поиске ошибки в процедурах, содержащих вызовы других процедур. Сначала можно протестировать текущую процедуру без захода в вызываемые процедуры. Если же выяснится, что ошибка возникает в вызываемой процедуре, то при следующем проходе следует войти в эту процедуру.



Слайд 82Шаг с выходом (Step Out)
Команда Step Out позволяет выполнить оставшуюся часть

текущей процедуры.



Слайд 83Отображение значений
Кроме контроля хода выполнения программы важной задачей инструментов отладки

VB является проверка значений переменных и выражений. Контроль значений возможен только в режиме паузы.

Слайд 84Самый простой вариант просмотра значения переменной или выражения – использование окна

Quick Info (быстрая информация). Для открытия этого окна достаточно установить курсор мыши на соответствующей переменной в окне кода. Если необходимо увидеть значение выражения, его следует выделить, а затем установить на нем курсор мыши.

Слайд 85Окно Autos (видимые переменные)
В этом окне отображаются значения переменных, используемых

в текущей инструкции и в предыдущей инструкции. Для открытия этого окна следует вызвать команду меню Debug, Windows, Autos.

Слайд 86Окно Autos (видимые переменные)


Обратная связь

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

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

Это сайт презентаций, докладов, проектов, шаблонов в формате PowerPoint. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами с другими пользователями.


Для правообладателей

Яндекс.Метрика