public AddStaff() { InitializeComponent(); //Подключение к базе данных MySqlConnection connection = new MySqlConnection("server = localhost; port = 3306; username = root; password = root; database = project"); DataBase dataBase = new DataBase(); //Класс представляет таблицу в памяти DataTable linkcat = new DataTable("linkcat"); DataTable linkcat1 = new DataTable("linkcat1"); DataTable linkcat2 = new DataTable("linkcat2"); dataBase.openConnetion(); //Запрос на извлечение семейного положения из базы данных using (MySqlDataAdapter da = new MySqlDataAdapter("SELECT * FROM marital_sratus", connection)) { da.Fill(linkcat); } foreach (DataRow da in linkcat.Rows) { _famaliStatis.Add(da[1].ToString(), da[0].ToString()); id_marital_status.Items.Add(da[1].ToString()); } //Запрос на извлечение списка должностей из базы данных using (MySqlDataAdapter da1 = new MySqlDataAdapter("SELECT * FROM position", connection)) { da1.Fill(linkcat1); } foreach (DataRow da1 in linkcat1.Rows) { _positionName.Add(da1[1].ToString(), da1[0].ToString()); id_position.Items.Add(da1[1].ToString()); } //Запрос на извлечение списка ученых степеней using (MySqlDataAdapter da2 = new MySqlDataAdapter("SELECT * FROM academic_degree", connection)) { da2.Fill(linkcat2); } foreach (DataRow da2 in linkcat2.Rows) { _degreeName.Add(da2[1].ToString(), da2[0].ToString()); id_academic_degree.Items.Add(da2[1].ToString()); } dataBase.closeConnetion(); }
public EditingData(int id) { this.id = id; InitializeComponent(); //Класс представляет таблицу в памяти DataBase dataBase = new DataBase(); DataTable linkcat = new DataTable("linkcat"); DataTable linkcat1 = new DataTable("linkcat1"); DataTable linkcat2 = new DataTable("linkcat2"); dataBase.openConnetion(); //Запрос на извлечение семейного положения из базы данных using (MySqlDataAdapter da = new MySqlDataAdapter("SELECT * FROM marital_sratus", connection)) { da.Fill(linkcat); } foreach (DataRow da in linkcat.Rows) { _famaliStatis.Add(da[1].ToString(), da[0].ToString()); status.Items.Add(da[1].ToString()); } //Запрос на извлечение списка должностей из базы данных using (MySqlDataAdapter da1 = new MySqlDataAdapter("SELECT * FROM position", connection)) { da1.Fill(linkcat1); } foreach (DataRow da1 in linkcat1.Rows) { _positionName.Add(da1[1].ToString(), da1[0].ToString()); position.Items.Add(da1[1].ToString()); } //Запрос на извлечение списка ученых степеней using (MySqlDataAdapter da2 = new MySqlDataAdapter("SELECT * FROM academic_degree", connection)) { da2.Fill(linkcat2); } foreach (DataRow da2 in linkcat2.Rows) { _degreeName.Add(da2[1].ToString(), da2[0].ToString()); academic_degree.Items.Add(da2[1].ToString()); } dataBase.closeConnetion(); }
private void LoadData() { DataBase dataBase = new DataBase(); dataBase.openConnetion(); string query = "SELECT family AS 'Фамилия', name AS 'Имя', surname AS 'Отчество', p.name_position AS 'Должность', ad.small_name AS 'Ученая степень' FROM employees join position p ON employees.id_position = p.id_position JOIN academic_degree ad ON employees.id_academic_degree = ad.id_academic_degree;"; MySqlDataAdapter adpt = new MySqlDataAdapter(query, connection); DataSet dset = new DataSet(); adpt.Fill(dset); dataGridView1.ColumnCount = 5; dataGridView1.Columns[0].Name = "Фамилия"; dataGridView1.Columns[1].Name = "Имя"; dataGridView1.Columns[2].Name = "Отчество"; dataGridView1.Columns[3].Name = "Должность"; dataGridView1.Columns[4].Name = "Ученая степень"; foreach (DataRow item in dset.Tables[0].Rows) { string[] buf = { item["Фамилия"].ToString(), item["Имя"].ToString(), item["Отчество"].ToString(), item["Должность"].ToString(), item["Ученая степень"].ToString() }; dataGridView1.Rows.Add(buf); } string query1 = "SELECT name_position, id_position FROM position ORDER BY id_position"; MySqlDataAdapter adapter = new MySqlDataAdapter(query1, connection); DataSet data = new DataSet(); adapter.Fill(data); foreach (DataRow item in data.Tables[0].Rows) { this.position.Add(item["name_position"].ToString(), int.Parse(item["id_position"].ToString())); } string query2 = "SELECT small_name, id_academic_degree FROM academic_degree ORDER BY id_academic_degree"; MySqlDataAdapter adapter2 = new MySqlDataAdapter(query2, connection); DataSet data2 = new DataSet(); adapter2.Fill(data2); foreach (DataRow item in data2.Tables[0].Rows) { this.academic_degree.Add(item["small_name"].ToString(), int.Parse(item["id_academic_degree"].ToString())); } dataBase.closeConnetion(); }
private void button1_Click(object sender, EventArgs e) { //Удаление сотрудника из базы данных DataBase dataBase = new DataBase(); dataBase.openConnetion(); string query3 = String.Format("DELETE FROM employees WHERE id={0} limit 1", id); MySqlCommand command2 = new MySqlCommand(query3, dataBase.getConnection()); if (command2.ExecuteNonQuery() == 1) { MessageBox.Show("Данные удалены"); } dataBase.closeConnetion(); //После удаления переход на форму списка сотрудников this.Hide(); LaboratoryStaff labStaff = new LaboratoryStaff(); labStaff.Show(); }
private void buttonSave_Click(object sender, EventArgs e) { //При нажатии на кнопку сохранение, происходит проверка на заполненность полей и на корректность if (family.Text == "") { MessageBox.Show("Введите фамилию"); return; } if (!Regex.Match(family.Text, @"[А-яёЁ]").Success) { MessageBox.Show("Допускаются только русские буквы"); return; } if (name.Text == "") { MessageBox.Show("Введите имя"); return; } if (!Regex.Match(name.Text, @"[А-яёЁ]").Success) { MessageBox.Show("Допускаются только русские буквы"); return; } if (!Regex.Match(surname.Text, @"[А-яёЁ]").Success) { MessageBox.Show("Допускаются только русские буквы"); return; } if (gender.Text == "") { MessageBox.Show("Выберите пол"); return; } if (dateTimePicker1.Text == "") { MessageBox.Show("Укажите дату рождения"); return; } if (status.Text == "") { MessageBox.Show("Укажите семейное положение"); return; } if (having_child.Text == "") { MessageBox.Show("Укажите наличие детей"); return; } if (position.Text == "") { MessageBox.Show("Укажите должность сотрудника"); return; } if (academic_degree.Text == "") { MessageBox.Show("Укажите учёную степень сотрудника"); return; } DataBase dataBase = new DataBase(); //Запрос на обновление данных в базе по id string queryUp = String.Format("UPDATE `employees` SET `family` = @family,`name` = @name, `surname` = @surname, `gender` = @gender, `birthday` = @birthday, `id_marital_status` = @id_marital_status, `having_child` = @having_child, `id_position` = @id_position, `id_academic_degree`= @id_academic_degree WHERE id={0} limit 1", id); MySqlCommand commandUp = new MySqlCommand(queryUp, dataBase.getConnection()); //Добавление данных с формы commandUp.Parameters.Add("@family", MySqlDbType.VarChar).Value = family.Text; commandUp.Parameters.Add("@name", MySqlDbType.VarChar).Value = name.Text; commandUp.Parameters.Add("@surname", MySqlDbType.VarChar).Value = surname.Text; commandUp.Parameters.Add("@birthday", MySqlDbType.Date).Value = dateTimePicker1.Value.Date; commandUp.Parameters.Add("@id_marital_status", MySqlDbType.Int32).Value = _famaliStatis[status.SelectedItem.ToString()]; commandUp.Parameters.Add("@id_position", MySqlDbType.Int32).Value = _positionName[position.SelectedItem.ToString()]; commandUp.Parameters.Add("@id_academic_degree", MySqlDbType.Int32).Value = _degreeName[academic_degree.SelectedItem.ToString()]; //Обработка вводимых данных if (gender.GetItemText(gender.SelectedItem) == "Мужской(M)") { commandUp.Parameters.Add("@gender", MySqlDbType.Text).Value = "M"; } if (gender.GetItemText(gender.SelectedItem) == "Женский(F)") { commandUp.Parameters.Add("@gender", MySqlDbType.VarChar).Value = "F"; } if (having_child.GetItemText(having_child.SelectedItem) == "Есть") { commandUp.Parameters.Add("@having_child", MySqlDbType.Byte).Value = "1"; } if (having_child.GetItemText(having_child.SelectedItem) == "Нет") { commandUp.Parameters.Add("@having_child", MySqlDbType.Byte).Value = "0"; } dataBase.openConnetion(); if (commandUp.ExecuteNonQuery() == 1) { MessageBox.Show("Данные успешно изменены"); } else { MessageBox.Show("Данные не изменены"); } dataBase.closeConnetion(); }
private void LoadData() { DataBase dataBase = new DataBase(); //Подключаемся к базе данных dataBase.openConnetion(); //Запрос в базу данных на вывод сотрудников string query = "SELECT id, family AS 'Фамилия'," + " name AS 'Имя', surname AS 'Отчество', " + "p.name_position AS 'Должность', ad.small_name AS 'Ученая степень' " + "FROM employees join position p ON employees.id_position = p.id_position " + "JOIN academic_degree ad ON employees.id_academic_degree = ad.id_academic_degree;"; //Представляет набор команд данных и подключение к базе данных, которые используются для заполнения DataSet и обновления базы данных MySqlDataAdapter adpt = new MySqlDataAdapter(query, connection); DataSet dset = new DataSet(); adpt.Fill(dset); //Создание столбцов dataGridView1.ColumnCount = 6; dataGridView1.Columns[0].Name = "id"; dataGridView1.Columns[1].Name = "Фамилия"; dataGridView1.Columns[1].Width = 180; dataGridView1.Columns[2].Name = "Имя"; dataGridView1.Columns[2].Width = 180; dataGridView1.Columns[3].Name = "Отчество"; dataGridView1.Columns[3].Width = 180; dataGridView1.Columns[4].Name = "Должность"; dataGridView1.Columns[4].Width = 430; dataGridView1.Columns[5].Name = "Ученая степень"; dataGridView1.Columns[5].Width = 150; //Заполнение столбцов foreach (DataRow item in dset.Tables[0].Rows) { string[] buf = { item ["id"].ToString(), item["Фамилия"].ToString(), item["Имя"].ToString(), item["Отчество"].ToString(), item["Должность"].ToString(), item["Ученая степень"].ToString() }; dataGridView1.Rows.Add(buf); } //Создание запроса на сортировку по столбцу "Должность" string query1 = "SELECT name_position, id_position FROM position ORDER BY id_position"; MySqlDataAdapter adapter = new MySqlDataAdapter(query1, connection); DataSet data = new DataSet(); adapter.Fill(data); foreach (DataRow item in data.Tables[0].Rows) { this.position.Add(item["name_position"].ToString(), int.Parse(item["id_position"].ToString())); } //Создание запроса на сортировку по столбцу "Ученая степень" string query2 = "SELECT small_name, id_academic_degree FROM academic_degree ORDER BY id_academic_degree"; MySqlDataAdapter adapter2 = new MySqlDataAdapter(query2, connection); DataSet data2 = new DataSet(); adapter2.Fill(data2); foreach (DataRow item in data2.Tables[0].Rows) { this.academic_degree.Add(item["small_name"].ToString(), int.Parse(item["id_academic_degree"].ToString())); } dataBase.closeConnetion(); }
private void buttonSave_Click(object sender, EventArgs e) { //При нажатии на кнопку сохранение, происходит проверка на заполненность полей и на корректность if (family.Text == "") { MessageBox.Show("Введите фамилию"); return; } if (!Regex.Match(family.Text, @"[А-яёЁ]").Success) { MessageBox.Show("Допускаются только русские буквы"); return; } if (name.Text == "") { MessageBox.Show("Введите имя"); return; } if (!Regex.Match(name.Text, @"[А-яёЁ]").Success) { MessageBox.Show("Допускаются только русские буквы"); return; } if (!Regex.Match(surname.Text, @"[А-яёЁ]").Success) { MessageBox.Show("Допускаются только русские буквы"); return; } if (gender.Text == "") { MessageBox.Show("Выберите пол"); return; } if (dateTimePicker1.Text == "") { MessageBox.Show("Укажите дату рождения"); return; } if (id_marital_status.Text == "") { MessageBox.Show("Укажите семейное положение"); return; } if (having_child.Text == "") { MessageBox.Show("Укажите наличие детей"); return; } if (id_position.Text == "") { MessageBox.Show("Укажите должность сотрудника"); return; } if (id_academic_degree.Text == "") { MessageBox.Show("Укажите учёную степень сотрудника"); return; } DataBase dataBase = new DataBase(); //Запрос в базу данных о добавлении новго сотрудника MySqlCommand command = new MySqlCommand("INSERT INTO `employees` (`family`, `name`, `surname`, `gender`, `birthday`, `id_marital_status`, `having_child`, `id_position`, `id_academic_degree`) " + "VALUES (@family, @name, @surname, @gender, @birthday, @id_marital_status, @having_child, @id_position, @id_academic_degree)", dataBase.getConnection()); //Добавление данных с формы command.Parameters.Add("@family", MySqlDbType.VarChar).Value = family.Text; command.Parameters.Add("@name", MySqlDbType.VarChar).Value = name.Text; command.Parameters.Add("@surname", MySqlDbType.VarChar).Value = surname.Text; command.Parameters.Add("@birthday", MySqlDbType.Date).Value = dateTimePicker1.Value.Date; command.Parameters.Add("@id_marital_status", MySqlDbType.Int32).Value = _famaliStatis[id_marital_status.SelectedItem.ToString()]; command.Parameters.Add("@id_position", MySqlDbType.Int32).Value = _positionName[id_position.SelectedItem.ToString()]; command.Parameters.Add("@id_academic_degree", MySqlDbType.Int32).Value = _degreeName[id_academic_degree.SelectedItem.ToString()]; //Обработка вводимых данных if (gender.GetItemText(gender.SelectedItem) == "Мужской(M)") { command.Parameters.Add("@gender", MySqlDbType.Text).Value = "M"; } if (gender.GetItemText(gender.SelectedItem) == "Женский(F)") { command.Parameters.Add("@gender", MySqlDbType.VarChar).Value = "F"; } if (having_child.GetItemText(having_child.SelectedItem) == "Есть") { command.Parameters.Add("@having_child", MySqlDbType.Byte).Value = "1"; } if (having_child.GetItemText(having_child.SelectedItem) == "Нет") { command.Parameters.Add("@having_child", MySqlDbType.Byte).Value = "0"; } dataBase.openConnetion(); if (command.ExecuteNonQuery() == 1) { MessageBox.Show("Сотрудник успешно добавлен"); } else { MessageBox.Show("Сотрудник не добавлен"); } dataBase.closeConnetion(); //Очистка полей после добавления family.Clear(); name.Clear(); surname.Clear(); gender.SelectedItem = null; dateTimePicker1.Text = null; id_marital_status.SelectedItem = null; having_child.SelectedItem = null; id_position.SelectedItem = null; id_academic_degree.SelectedItem = null; }