Задание
Создать подключение между базой данных и приложением, выполнить запросы используя агрегатные функции
Функционал программы
Подключается к базе данных, формирует таблицу и отображает на форме, есть возможность вставить и удалить данные
Фрагмент программного кода
class Animals//Класс для работы с животными { public int ID { get; set; } public string name { get; set; } public int ID_Class { get; set; } public int live { get; set; } public Animals() { } public Animals(int ID, string name, int ID_Class, int live) { this.ID = ID; this.name = name; this.ID_Class = ID_Class; this.live = live; } public static List<Animals> FetchAllClient(string ConnectionString, string OrderColumnName) { using (OleDbConnection con = new OleDbConnection(ConnectionString)) { con.Open(); string SQL = "SELECT [КодЖивотного], [НазваниеЖивотного], [КодКласса], [ПродолжительностьЖизни] FROM Животное ORDER BY [" + OrderColumnName + "]"; OleDbCommand comm = new OleDbCommand(SQL, con); OleDbDataReader reader = comm.ExecuteReader(); List<Animals> list = new List<Animals>(); if (reader.HasRows) { while (reader.Read()) { list.Add(new Animals { ID = reader.GetInt32(0), name = reader.GetString(1), ID_Class = reader.GetInt32(2), live = reader.GetInt32(3) }); } } reader.Close(); return list; } } public static void InsertNewClient(string ConnectionString, Animals Client) { using (OleDbConnection con = new OleDbConnection(ConnectionString)) { try { con.Open(); string SQL = "INSERT INTO Животное ([КодЖивотного], [НазваниеЖивотного], [КодКласса], [ПродолжительностьЖизни]) " + "VALUES(@D, @P, @O, @s)"; OleDbCommand comm = new OleDbCommand(SQL, con); comm.Parameters.AddWithValue("@D", Client.ID); comm.Parameters.AddWithValue("@P", Client.name); comm.Parameters.AddWithValue("@O", Client.ID_Class); comm.Parameters.AddWithValue("@s", Client.live); comm.ExecuteNonQuery(); con.Close(); } catch (Exception) { MessageBox.Show("Невозможно добавить"); } } } public static void DeleteClient(string ConnectionString, Animals client) { using (OleDbConnection con = new OleDbConnection(ConnectionString)) { try { con.Open(); string SQL = "DELETE FROM Животное WHERE [ID] = @fio AND [НазваниеЖивотного] = @two AND [КодЖивотного] = @Ok AND [ПродолжительностьЖизни]"; OleDbCommand comm = new OleDbCommand(SQL, con); comm.Parameters.AddWithValue("@fio", client.ID); comm.Parameters.AddWithValue("@two", client.name); comm.Parameters.AddWithValue("@Ok", client.ID_Class); comm.Parameters.AddWithValue("@g", client.live); comm.ExecuteNonQuery(); con.Close(); } catch (Exception) { MessageBox.Show("Удаление невозможно"); } } } public static void UpdatePerson(string ConnectionString, Animals buhgalter) { using (OleDbConnection con = new OleDbConnection(ConnectionString)) { con.Open(); string SQL = "UPDATE Животное SET " + " [НазваниеЖивотного] = @O, [КодКласса] = @P, [ПродолжительностьЖизни] = @f WHERE КодЖивотного = @M "; OleDbCommand comm = new OleDbCommand(SQL, con); comm.Parameters.AddWithValue("@O", buhgalter.name); comm.Parameters.AddWithValue("@M", buhgalter.ID_Class); comm.Parameters.AddWithValue("@f", buhgalter.live); comm.Parameters.AddWithValue("@P", buhgalter.ID); comm.ExecuteNonQuery(); con.Close(); } } } }
Скриншот архива с проектом
Пояснения по запуску программы
Если нужно будет редактировать проект, необходимо установить Visual Studio, для редактирования базы данных нужен MS Access
Чтобы запустить программу можно ничего не устанавливать, файл находится в папке Zoo/bin/debug/Zoo.exe
anna220699