Задание
Разработать на ЯП C# программу для учета результатов сесссии. Программа должна позволять добавлять, изменять и удалять данные. Должен быть учет преподов и студентов. По желанию можете реализовать поиск.
Функционал программы
- добавление данных
- редактирование данных
- удаление данных
Фрагмент программного кода
using System; using System.Data; using System.Data.OleDb; using System.Windows.Forms; namespace SessionApp { public partial class SessionForm : Form { public SessionForm() { InitializeComponent(); } OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\Users\Пк\OneDrive\Pictures\Desktop\session.mdb"); private void Populate() { conn.Open(); string query = "select * from Сессия"; OleDbDataAdapter da = new OleDbDataAdapter(query, conn); OleDbCommandBuilder builder = new OleDbCommandBuilder(da); var ds = new DataSet(); da.Fill(ds); SessionDGV.DataSource = ds.Tables[0]; conn.Close(); } private void guna2Button4_Click(object sender, EventArgs e) { TeachersForm teachers = new TeachersForm(); teachers.Show(); Hide(); } private void SessionForm_Load(object sender, EventArgs e) { Populate(); } private void guna2Button1_Click(object sender, EventArgs e) { if (IdTb.Text == "" || StudentTb.Text == "" || TeacherTb.Text == "" || SubjectTb.Text == "" || EvaluationCb.Text == "") { MessageBox.Show("Missing information"); } else { try { conn.Open(); string query = "insert into Сессия values (" + IdTb.Text + ", '" + StudentTb.Text + "', '" + TeacherTb.Text + "', '" + SubjectTb.Text + "', '" + EvaluationCb.Text + "')"; OleDbCommand cmd = new OleDbCommand(query, conn); cmd.ExecuteNonQuery(); MessageBox.Show("Резкльтат сессии добавлен"); conn.Close(); Populate(); } catch (Exception ex) { MessageBox.Show(ex.Message); } } } private void guna2Button3_Click(object sender, EventArgs e) { if (IdTb.Text == "") { MessageBox.Show("Missing information"); } else { try { conn.Open(); string query = "delete from Сессия where [Код]=" + IdTb.Text + ";"; OleDbCommand cmd = new OleDbCommand(query, conn); cmd.ExecuteNonQuery(); MessageBox.Show("Результат сессии удален"); conn.Close(); Populate(); } catch (Exception ex) { MessageBox.Show(ex.Message); } } } private void SessionDGV_CellContentClick(object sender, DataGridViewCellEventArgs e) { IdTb.Text = SessionDGV.SelectedRows[0].Cells[0].Value.ToString(); StudentTb.Text = SessionDGV.SelectedRows[0].Cells[1].Value.ToString(); TeacherTb.Text = SessionDGV.SelectedRows[0].Cells[2].Value.ToString(); SubjectTb.Text = SessionDGV.SelectedRows[0].Cells[3].Value.ToString(); EvaluationCb.Text = SessionDGV.SelectedRows[0].Cells[4].Value.ToString(); } private void guna2Button2_Click(object sender, EventArgs e) { if (IdTb.Text == "" || StudentTb.Text == "" || TeacherTb.Text == "" || SubjectTb.Text == "" || EvaluationCb.Text == "") { MessageBox.Show("Missing information"); } else { try { conn.Open(); string query = "update Сессия set Студент ='" + StudentTb.Text + "', Препод ='" + TeacherTb.Text + "', Предмет = '" + SubjectTb.Text + "', Оценка= '" + EvaluationCb.Text +"' where [Код]=" + IdTb.Text + ";"; OleDbCommand cmd = new OleDbCommand(query, conn); cmd.ExecuteNonQuery(); MessageBox.Show("Результат сессии изменен"); conn.Close(); Populate(); } catch (Exception ex) { MessageBox.Show(ex.Message); } } } } }
Скриншот архива с проектом
Пояснения по запуску программы
Запустить Visual Studio 2019 / 22, запустить проект. О том, как подключить БД, смотри в видео, приложенному к работе.
Путь к базе добавляем на каждую форму, кроме формы MainForm.
admin