Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

1 семестр / Bsbd4

.docx
Скачиваний:
3
Добавлен:
29.06.2023
Размер:
178.84 Кб
Скачать

Министерство науки и высшего образования Российской Федерации

Федеральное государственное бюджетное образовательное учреждение

высшего образования

ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)

Кафедра безопасности информационных систем(БИС)

SQL ОПЕРАТОРЫ ДЛЯ БД СУБД MICROSOFT SQL SERVER В ПРИЛОЖЕНИИ MICROSOFT VISUAL STUDIO

Отчет по лабораторной работе № 4

по дисциплине «Безопасность систем баз данных»

Выполнил:

Студент гр. 739-1

_______Климанов М. Д.

05.06.2021

Принял:

Преподаватель кафедры КИБЭВС

Светлаков М. О.

5.06.2021

Томск 2021

  1. Введение

Цель работы: Изучение основных особенностей формирования запросов в приложении Microsoft Visual Studio для своей предметной области.

Постановка задачи:

1 Изучить материал лабораторной работы №4.

2 Для своей БД необходимо выполнить:

2.1 использование запросов на выборку.

2.2 использование подзапросов;

2.3 использование операторов изменения данных. Обязательно: - INSERT; - UPDATE; - DELETE; - параметрические запросы с проверкой корректности. Параметры разных типов данных;

2.4 протестировать работу полученного приложения.

Краткие теоретические сведенья:

SQL содержит операторы определения данных, операторы манипулирования данными, операторы, предназначенные для администрирования БД и др.

SQL является международным стандартом, признанным такими организациями по стандартизации, как Международная организация по стандартизации (International Organization for Standardization, ISO), Американский национальный институт стандартов (American National Standards Institute, ANSI), который входит в ISO и Международную электротехнической комиссию (МЭК, International Electrotechnical Commission, IEC).

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

СУБД Microsoft SQL Server в качестве языка запросов использует версию SQL, получившую название Transact-SQL (сокращённо T-SQL). Transact-SQL является реализацией стандарта ANSI/ISO по структурированному языку запросов (SQL) с расширениями и особенностями.

В лабораторной работе рассматриваются SQL операторы манипулирования данными.

Существует четыре основных типа запросов данных в SQL, которые относятся к так называемому языку манипулирования данными (Data Manipulation Language или DML):

- SELECT – выбрать строки;

- INSERT – добавить строки;

- UPDATE – изменить строки;

- DELETE – удалить строки

  1. Ход работы

    1. Примеры запросов в СУБД

Перед реализацией запросов через интерфейс разрабатываемого приложения для агентства недвижимости можно протестировать разработанные запросы по необходимым данным, например, в Microsoft SQL Server Management Studio. Для этого, например, нажать на панели инструментов Создать запрос:

Рисунок 1 – Создание запроса

На рисунке 2 приведен пример обработки запроса в таблицу «Команда».

Рисунок 2 – Создание запроса в таблицу сотрудники

Для обработки запроса написан код, который приведен ниже:

Select * from [Команда]

Для выборки определенных полей из определенной таблицы на примере таблицы «Команда». Пример создания приведен на рисунке 3.

Рисунок 3 – Выборка из таблицы Команда

Запросы также можно создавать в редакторе.

    1. Создание первой формы для запросов

Для примеров запросов была создана отдельная форма и на нее добавлены элементы для работы с запросами, такие как: radionButton (для выбора таблицы), а также dataGridView для отображения запросов. Созданная страница приведена на рисунке 4

Рисунок 4 – Примеры запросов

Для работы с формой реализован метод FillDataGridView. Код для метода приведен ниже.

//объявляем метод, на вход подаем строку запроса, а возвращаем объект DataTable

DataTable FillDataGridView(string sqlSelect)

{

//Создаем объект connection класса SqlConnection для соединения с БД

//CafeConnectionString – строка описания соединения с источником данных

SqlConnection connection = new

SqlConnection(Properties.Settings.Default.Соревнования_по_футболуConnectionString);

//Создаем объект command для SQL команды

SqlCommand command = connection.CreateCommand();

//Заносим текст SQL запроса через параметр sqlSelect

command.CommandText = sqlSelect;

//Создаем объект adapter класса SqlDataAdapter

SqlDataAdapter adapter = new SqlDataAdapter();

//Задаем адаптеру нужную команду, в данном случае команду Select

adapter.SelectCommand = command;

//Создаем объект table для последующего отображения результата запроса

DataTable table = new DataTable();

//заполним набор данных результатом запроса

adapter.Fill(table);

return table;

Пример работы программы приведен на рисунках 5 – 8.

Рисунок 5 – Работы программы на примере таблицы «Команда»

Рисунок 6 – Работы программы на примере таблицы «Соревнования»

Рисунок 7 – Работа программы на примере таблицы «Стадион»

Рисунок 8 – Работа программы на примере таблицы «Участники»

Для таблицы свидетельства реализован запрос по выборке.

Код программы приведен ниже:

private void radioButton1_CheckedChanged(object sender, EventArgs e)

{

dataGridViewSelect.DataSource = FillDataGridView("SELECT * FROM команда");

}

private void radioButton2_CheckedChanged(object sender, EventArgs e)

{

dataGridViewSelect.DataSource = FillDataGridView("SELECT * FROM результаты_соревнований");

}

private void radioButton3_CheckedChanged(object sender, EventArgs e)

{

dataGridViewSelect.DataSource = FillDataGridView("SELECT * FROM Соревнование");

}

private void radioButton5_CheckedChanged(object sender, EventArgs e)

{

dataGridViewSelect.DataSource = FillDataGridView("SELECT * FROM Стадион");

}

private void radioButton6_CheckedChanged(object sender, EventArgs e)

{

dataGridViewSelect.DataSource = FillDataGridView("SELECT * FROM Участник");

}

private void radioButton2_CheckedChanged_1(object sender, EventArgs e)

{

dataGridViewSelect.DataSource = FillDataGridView("SELECT * FROM Результаты соревнований");

}

    1. Создание второй формы для запросов

Перейдем на страницу tabPage2. Для нее укажем:

- свойство Name в tabPageSelect;

свойство Text в Полная запись SELECT.

На tabPageSelect с палитры Toolbox разместили компонент groupBox для которого указали свойства:

- Name в groupBoxFSelect;

- Text в Выданные сотрудником свидетельства;

- Dock в Top.

Далее проведены аналогичные действия, как и в предыдущем пункте. Созданная форма приведена на рисунке 9.

Рисунок 9 – Страница полная запись SELECT

Для этой формы также реализован обработчик ошибок на тот случай, если данные не ведены. Пример работы приведен на рисунке 10.

Рисунок 10 – Пример работы страницы «Полная запись SELECT»

    1. Пример работы с подзапросами

Покажем пример использования подзапросов. Добавили новую станицу на tabControlSQL. Для это нажали на tabControlSQL правую кнопку мыши и выбрали Add Tab. В целом далее проведены аналогичные действия. Итоговая форма приведена на рисунке 11.

Рисунок 11 – Итоговая страница для работы с подзапросами

На рисунке 12 приведен пример работы программы.

Рисунок 12 – Пример работы программы с подзапросами

    1. Создание страницы запроса имения данных

Покажем пример использования запросов изменения данных (INSERT, UPDATE, DELETE) на примере таблицы «Главный тренер».

Добавили новую станицу на tabControlSQL. Для это нажали на tabControlSQL правую кнопку мыши и выбрали Add Tab.

Задали для новой страницы:

- свойство Name в tabPageDML;

- свойство Text в Запросы изменения данных. Перешли на страницу tabPageDML. Разместили с палитры компонент Toolbox компонент groupBox, для которого указали свойства:

- Name в groupBoxDML;

- Text в Операторы;

- Dock в Top.

Далее просто использовали стандартные элементы с панели управления. Итоговый внешний вид страницы приведен на рисунке 13

Рисунок 13 – Итоговый внешний вид страницы «Запросы изменения данных»

  1. Заключение

В результате выполнения лабораторной работы по предмету «Безопасность операционных систем баз данных» были закреплены теоретические сведенья, полученные на лекционных занятиях, а также получены дополнительные навыки по разработке приложений с использованием систем баз данных.

Соседние файлы в папке 1 семестр