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

UTS-32_IOSU_Guguchkin_A_7

.docx
Скачиваний:
1
Добавлен:
08.03.2023
Размер:
591.41 Кб
Скачать

МИНОБРНАУКИ РОССИИ

Федеральное государственное автономное образовательное учреждение высшего образования

«Национальный исследовательский университет

«Московский институт электронной техники»

Направление

27.03.04 «Управление в технических системах»

Дисциплина

Информационное обеспечение систем управления

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

К ЛАБОРАТОРНОЙ РАБОТЕ №7

«Создание программы

для работы с БД»

Выполнил

Студент гр.УТС-32

Гугучкин А.А.

(подпись)

Проверил

Свиридов А.Н.

(подпись)

Цель: изучить основные возможности программного взаимодействия приложений .NET с базами данных под управлением СУБД Access.

Ход работы:

Отображение, добавление и удаление данных для каждой из таблиц.

Таблица Врач

Таблица Диагноз

Таблица Лечебное учреждение

Таблица Пациент

Таблица Прием

Таблица процедура

Вывод: я изучил основные возможности программного взаимодействия приложений .NET с базами данных под управлением СУБД Access.

Графический интерфейс программы:

Код программы:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.Data.OleDb;

namespace LR7

{

public partial class Form1 : Form

{

int rb = 0; // перменная содержит ифнормацию о текущей таблице в работе

OleDbConnection cn = new OleDbConnection(

@"Provider = Microsoft.ACE.OLEDB.12.0;" +

@"Data Source = C:\Users\Celestial_Shepherd\Desktop\Lab_3(1).accdb;"

);

OleDbCommand cmd = new OleDbCommand();

public Form1()

{

InitializeComponent();

radioButton1.Checked = true;

textBox1.Enabled = false;

textBox2.Enabled = true;

textBox3.Enabled = true;

textBox4.Enabled = true;

textBox5.Enabled = true;

textBox6.Enabled = true;

textBox7.Enabled = false;

textBox8.Enabled = false;

label1.Text = "Табельный номер врача";

label2.Text = "Номер лечебного учреждения";

label3.Text = "Фамилия";

label4.Text = "Имя";

label5.Text = "Отчество";

label6.Text = "Специальность";

label7.Text = "";

label8.Text = "";

label9.Text = "Фамилия";

}

private void Form1_Load(object sender, EventArgs e)

{

// установка связи между объектом отправки SQL-запросов и

// соединением

cmd.Connection = cn;

}

private void radioButton1_CheckedChanged(object sender, EventArgs e) // врач

{

rb = 0;

textBox1.Enabled = false;

textBox2.Enabled = true;

textBox3.Enabled = true;

textBox4.Enabled = true;

textBox5.Enabled = true;

textBox6.Enabled = true;

textBox7.Enabled = false;

textBox8.Enabled = false;

label1.Text = "Табельный номер врача";

label2.Text = "Номер лечебного учреждения";

label3.Text = "Фамилия";

label4.Text = "Имя";

label5.Text = "Отчество";

label6.Text = "Специальность";

label7.Text = "";

label8.Text = "";

label9.Text = "Фамилия";

}

private void radioButton2_CheckedChanged(object sender, EventArgs e) // диагноз

{

rb = 1;

textBox1.Enabled = false;

textBox2.Enabled = true;

textBox3.Enabled = true;

textBox4.Enabled = false;

textBox5.Enabled = false;

textBox6.Enabled = false;

textBox7.Enabled = false;

textBox8.Enabled = false;

label1.Text = "Идентификатор диагноза";

label2.Text = "Описание диагноза";

label3.Text = "Лечение";

label4.Text = "";

label5.Text = "";

label6.Text = "";

label7.Text = "";

label8.Text = "";

label9.Text = "Описание диагноза";

}

private void radioButton3_CheckedChanged(object sender, EventArgs e) // лечебное учреждение

{

rb = 2;

textBox1.Enabled = false;

textBox2.Enabled = true;

textBox3.Enabled = true;

textBox4.Enabled = true;

textBox5.Enabled = false;

textBox6.Enabled = false;

textBox7.Enabled = false;

textBox8.Enabled = false;

label1.Text = "Номер лечебного заведения";

label2.Text = "Тип лечебного учреждения";

label3.Text = "Специализация лечебного заведения";

label4.Text = "Адрес";

label5.Text = "";

label6.Text = "";

label7.Text = "";

label8.Text = "";

label9.Text = "Адрес";

}

private void radioButton4_CheckedChanged(object sender, EventArgs e) // пациент

{

rb = 3;

textBox1.Enabled = false;

textBox2.Enabled = true;

textBox3.Enabled = true;

textBox4.Enabled = true;

textBox5.Enabled = true;

textBox6.Enabled = true;

textBox7.Enabled = false;

textBox8.Enabled = false;

label1.Text = "Номер страхового";

label2.Text = "Фамилия";

label3.Text = "Имя";

label4.Text = "Отчество";

label5.Text = "Дата рождения";

label6.Text = "Адрес";

label7.Text = "";

label8.Text = "";

label9.Text = "Фамилия";

}

private void radioButton5_CheckedChanged(object sender, EventArgs e) //прием

{

rb = 4;

textBox1.Enabled = false;

textBox2.Enabled = true;

textBox3.Enabled = true;

textBox4.Enabled = true;

textBox5.Enabled = true;

textBox6.Enabled = true;

textBox7.Enabled = true;

textBox8.Enabled = true;

label1.Text = "Номер приема";

label2.Text = "Табельный номер врача";

label3.Text = "Дата приема";

label4.Text = "Время приема";

label5.Text = "Номер кабинета";

label6.Text = "Номер страхового полиса";

label7.Text = "Номер процедуры";

label8.Text = "Идентификатор диагноза";

label9.Text = "Номер приема";

}

private void radioButton6_CheckedChanged(object sender, EventArgs e) // процедура

{

rb = 5;

textBox1.Enabled = false;

textBox2.Enabled = true;

textBox3.Enabled = true;

textBox4.Enabled = true;

textBox5.Enabled = false;

textBox6.Enabled = false;

textBox7.Enabled = false;

textBox8.Enabled = false;

label1.Text = "Номер процедуры";

label2.Text = "Название";

label3.Text = "Длительность";

label4.Text = "Цена";

label5.Text = "";

label6.Text = "";

label7.Text = "";

label8.Text = "";

label9.Text = "Название";

}

private void button1_Click(object sender, EventArgs e) // открыть

{

cn.Open(); // установка соединения

try

{

// очистка содержимого компонента listBox1

listBox1.Items.Clear();

if (rb == 0)

cmd.CommandText = "SELECT * FROM Врач";

else if (rb == 1)

cmd.CommandText = "SELECT * FROM Диагноз";

else if (rb == 2)

cmd.CommandText = "SELECT * FROM [Лечебное учреждение]";

else if (rb == 3)

cmd.CommandText = "SELECT * FROM Пациент";

else if (rb == 4)

cmd.CommandText = "SELECT * FROM Прием";

else

cmd.CommandText = "SELECT * FROM Процедура";

// попытка выполнить запрос,

// доступ к его результату будет осуществляться

// при помощи объекта rd

OleDbDataReader rd = cmd.ExecuteReader();

// если запрос вернул результат

if (rd.HasRows)

{

while (rd.Read())

{

if (rb == 0)

{

listBox1.Items.Add(rd[0].ToString() + " | " + rd[1].ToString() + " | " + rd[2].ToString() + " | " + rd[3].ToString() + " | " + rd[4].ToString() + " | " + rd[5].ToString());

}

else if (rb == 1)

{

listBox1.Items.Add(rd[0].ToString() + " | " + rd[1].ToString() + " | " + rd[2].ToString());

}

else if (rb == 2)

{

listBox1.Items.Add(rd[0].ToString() + " | " + rd[1].ToString() + " | " + rd[2].ToString() + " | " + rd[3].ToString());

}

else if (rb == 3)

{

listBox1.Items.Add(rd[0].ToString() + " | " + rd[1].ToString() + " | " + rd[2].ToString() + " | " + rd[3].ToString() + " | " + rd[4].ToString() + " | " + rd[5].ToString());

}

else if (rb == 4)

{

listBox1.Items.Add(rd[0].ToString() + " | " + rd[1].ToString() + " | " + rd[2].ToString() + " | " + rd[3].ToString() + " | " + rd[4].ToString() + " | " + rd[5].ToString() + " | " + rd[6].ToString() + " | " + rd[7].ToString());

}

else

{

listBox1.Items.Add(rd[0].ToString() + " | " + rd[1].ToString() + " | " + rd[2].ToString() + " | " + rd[3].ToString());

}

}

}

}

finally

{

cn.Close(); // закрытие соединения с БД

}

}

private void button2_Click(object sender, EventArgs e) // добавить

{

cn.Open();

try

{

if (rb == 0)

{

cmd.CommandText =

"INSERT INTO Врач ([Номер лечебного учреждения], Фамилия, Имя, Отчество, Специальность) VALUES ('"

+ textBox2.Text + "','"

+ textBox3.Text + "','"

+ textBox4.Text + "','"

+ textBox5.Text + "','"

+ textBox6.Text + "')";

cmd.ExecuteNonQuery();

cmd.Clone();

}

else if (rb == 1)

{

cmd.CommandText =

"INSERT INTO Диагноз ([Описание диагноза], Лечение) VALUES ('"

+ textBox2.Text + "','"

+ textBox3.Text + "')";

cmd.ExecuteNonQuery();

cmd.Clone();

}

else if (rb == 2)

{

cmd.CommandText =

"INSERT INTO [Лечебное учреждение] ([Тип лечебного учреждения], [Специализация лечебного заведения], Адрес) VALUES ('"

+ textBox2.Text + "','"

+ textBox3.Text + "','"

+ textBox4.Text + "')";

cmd.ExecuteNonQuery();

cmd.Clone();

}

else if (rb == 3)

{

cmd.CommandText =

"INSERT INTO Пациент ( Фамилия, Имя, Отчество, [Дата рождения], Адрес) VALUES ('"

+ textBox2.Text + "','"

+ textBox3.Text + "','"

+ textBox4.Text + "','"

+ textBox5.Text + "','"

+ textBox6.Text + "')";

cmd.ExecuteNonQuery();

cmd.Clone();

}

else if (rb == 4)

{

cmd.CommandText =

"INSERT INTO Прием ([Табельный номер врача], [Дата приема], [Время приема], [Номер кабинета], [Номер страхового полиса], [Номер процедуры], [Идентификатор диагноза]) " +

"VALUES ('"

+ textBox2.Text + "','"

+ textBox3.Text + "','"

+ textBox4.Text + "','"

+ textBox5.Text + "','"

+ textBox6.Text + "','"

+ textBox7.Text + "','"

+ textBox8.Text + "')";

cmd.ExecuteNonQuery();

cmd.Clone();

}

else

{

cmd.CommandText =

"INSERT INTO Процедура (Название, Длительность, Цена) VALUES ('"

+ textBox2.Text + "','"

+ textBox3.Text + "','"

+ textBox4.Text + "')";

cmd.ExecuteNonQuery();

cmd.Clone();

}

}

finally

{

cn.Close();

textBox1.Text = "";

textBox2.Text = "";

textBox3.Text = "";

textBox4.Text = "";

textBox5.Text = "";

textBox6.Text = "";

textBox7.Text = "";

textBox8.Text = "";

}

}

private void button3_Click(object sender, EventArgs e) // удалить

{

cn.Open();

try

{

if (rb == 0)

{

cmd.CommandText = "DELETE * FROM Врач WHERE Фамилия ='"

+ textBox9.Text + "'";

cmd.ExecuteNonQuery();

cmd.Clone();

}

else if (rb == 1)

{

cmd.CommandText = "DELETE * FROM Диагноз WHERE [Описание диагноза] ='"

+ textBox9.Text + "'";

cmd.ExecuteNonQuery();

cmd.Clone();

}

else if (rb == 2)

{

cmd.CommandText = "DELETE * FROM [Лечебное учреждение] WHERE Адрес ='"

+ textBox9.Text + "'";

cmd.ExecuteNonQuery();

cmd.Clone();

}

else if (rb == 3)

{

cmd.CommandText = "DELETE * FROM Пациент WHERE Фамилия ='"

+ textBox9.Text + "'";

cmd.ExecuteNonQuery();

cmd.Clone();

}

else if (rb == 4)

{

cmd.CommandText = "DELETE * FROM Прием WHERE [Номер приема] ='"

+ textBox9.Text + "'";

cmd.ExecuteNonQuery();

cmd.Clone();

}

else

{

cmd.CommandText = "DELETE * FROM Процедура WHERE Название ='"

+ textBox9.Text + "'";

cmd.ExecuteNonQuery();

cmd.Clone();

}

}

finally

{

cn.Close();

textBox9.Text = "";

}

}

}

}

Москва 2021г.