Hướng dẫn insert update delete mysql - chèn cập nhật xóa mysql
Thực hành truy vấn, insert, update, delete dữ liệu Mysql bằng Ado.net trong C# Mục lục:
1. Đặt vấn đề: Làm việc với CSDL MySql sử dụng Ado.net trong C# là một vấn đề rất quan trọng giúp chúng ta phát triển phần mềm được dễ dàng hơn. Bài tập thực hành trước đó chúng ta đã nắm được cách cài đặt MySql và cấu hình để kết nối được CSDL MySql trong C#. Bài tập hôm nay chúng ta sẽ thực hiện Thêm, Xóa, Sửa, Truy vấn thông tin của sinh viên ứng với CSDL Mysql. Chương trình cho phép thực hiện các lệnh Select, Insert, Update, Delete thông tin sinh viên trực tiếp ứng với Table sinhvien.CSDL MySql sử dụng Ado.net trong C# là một vấn đề rất quan trọng giúp chúng ta phát
triển phần mềm được dễ dàng hơn. 2. Tạo và thêm dữ liệu cho table SinhVien trong phpmyadmin Ở bài thực hành hôm trước tôi đã hướng dẫn chúng ta kết nối với CSDL MySql nếu chưa xem các bạn có thể tham khảo tại đây, chúng ta đã tạo thành công Database có tên laptrinhdotnet với bảng mã UTF-8 unicode_ci. Chúng ta tiếp tục sử dụng phpmyadmin để tạo table sinhvien gồm các cột: id_student kiểu dữ liệu integer, full_name kiểu dữ liệu varchar, age kiểu dữ liệu integer, grade kiểu dữ liệu double như hình bên dưới.tham khảo tại đây, chúng ta đã tạo thành công Database có tên laptrinhdotnet với bảng mã UTF-8 unicode_ci. Chúng ta tiếp tục sử dụng phpmyadmin để tạo table sinhvien gồm các cột: id_student kiểu dữ liệu integer, full_name kiểu dữ liệu varchar, age kiểu dữ liệu integer, grade kiểu dữ liệu double như hình bên dưới. Sau đó ta bắt đầu nhập dữ liệu sinh viên để test thử như hình bên dưới (Lưu ý: đây chỉ là dữ liệu mẫu để chúng ta thực hiện test chương trình)Lưu ý: đây chỉ là dữ liệu mẫu để chúng ta thực hiện test chương trình) 3. Truy vấn lấy toàn bộ danh sách sinh viên Đây sẽ là sourcecode minh họa phần này, mình sẽ giải thích code ở bên dưới:sourcecode minh họa phần này, mình sẽ giải thích code ở bên dưới: Class SinhVien.cs using System;System; using System.Collections.Generic;System.Collections.Generic; using System.Linq;System.Linq; using System.Text;System.Text; using System.Threading.Tasks;System.Threading.Tasks; namespace ThucHanh.Net_ThucHanh07{ThucHanh.Net_ThucHanh07{ class Student{class Student{ private int idStudent;private int idStudent; private String fullName; private String fullName; private int age; private int age; private double grade; private double grade; public Student(int idStudent, string fullName, int age, double grade){public Student(int idStudent, string fullName, int age, double grade){ this.IdStudent = idStudent;this.IdStudent = idStudent; this.FullName = fullName;this.FullName = fullName; this.Age = age;this.Age = age; this.Grade = grade;this.Grade = grade; } public int IdStudent { get => idStudent; set => idStudent = value; } public int IdStudent { get => idStudent; set => idStudent = value; } public string FullName { get => fullName; set => fullName = value; } public string FullName { get => fullName; set => fullName = value; } public int Age { get => age; set => age = value; } public int Age { get => age; set => age = value; } public double Grade { get => grade; set => grade = value; }public double Grade { get => grade; set => grade = value; } public void print(){public void print(){ Console.WriteLine("MSSV: " + idStudent);MSSV: " + idStudent); Console.WriteLine("Họ Tên: " + fullName);Họ Tên: " + fullName); Console.WriteLine("Tuổi: " + age);Tuổi: " + age); Console.WriteLine("Điểm TB: " + grade);Điểm TB: " + grade); Console.WriteLine("------------------------");------------------------"); }}}}} Truy vấn lấy ra thông tin toàn bộ danh sách sinh viên: public static ArrayList selectAllStudent(MySqlConnection connect){ ArrayList selectAllStudent(MySqlConnection connect){ ArrayList listStudent = new ArrayList();new ArrayList(); String sql = "select * from student";String sql = "select * from student"; MySqlCommand command = new MySqlCommand();new MySqlCommand(); command.Connection = connect; command.CommandText = sql; using (DbDataReader reader = command.ExecuteReader()){using (DbDataReader reader = command.ExecuteReader()){ if (reader.HasRows){if (reader.HasRows){ while (reader.Read()){while (reader.Read()){ & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Sinh viên st = sinh viên mới (Reader.getInt32 (0), Reader.getString (1), Reader.GetInt32 (2), Reader.GetDouble (3));new Student(reader.GetInt32(0), reader.GetString(1), reader.GetInt32(2), reader.GetDouble(3)); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; liststudent.add (ST); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; }}}}} & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;return listStudent; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; } 4. Chèn Sinh Viên Vào CSDL Công khai Int Int InsertStudent (MySQLConnection Connect, Student st) { insertStudent(MySqlConnection connect, Student st){ & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Chuỗi sql = "chèn vào học sinh (id_student, full_name, tuổi, lớp)"String sql = "Insert into Student(id_student, full_name, age, grade)" & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; + "Giá trị (@IdStudent, @fullname, @age, @grade)";values (@idStudent, @fullName, @age, @grade) "; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Lệnh mysqlcommand = new mysqlCommand ();new MySqlCommand(); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; lệnh.connection = Kết nối; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Command.CommandText = SQL; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; lệnh.parameter.addwithValue ("@idstudent", St.IdStudent);@idStudent", st.IdStudent); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; lệnh.parameter.addwithValue ("@fullname", St.fullname);@fullName", st.FullName); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Command.Parameter.AddwithValue ("@Age", St.Age);@age", st.Age); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Command.Parameter.AddWithValue ("@Lớp", St.Grade);@grade", st.Grade); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; int rows = Command.executenOnOnQuery ();int rows = command.ExecuteNonQuery(); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; trả lại hàng;return rows; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; } 4. Chèn Sinh Viên Vào CSDL Công khai Int Int InsertStudent (MySQLConnection Connect, Student st) { updateStudent(MySqlConnection connect, Student st){ & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Chuỗi sql = "chèn vào học sinh (id_student, full_name, tuổi, lớp)"Update Student set full_name = @fullName, age = @age, grade = @grade where id_student = @idStudent"; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Lệnh mysqlcommand = new mysqlCommand ();new MySqlCommand(); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; lệnh.connection = Kết nối; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Command.CommandText = SQL; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; lệnh.parameter.addwithValue ("@idstudent", St.IdStudent);@idStudent", st.IdStudent); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; lệnh.parameter.addwithValue ("@fullname", St.fullname);@fullName", st.FullName); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Command.Parameter.AddwithValue ("@Age", St.Age);@age", st.Age); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Command.Parameter.AddWithValue ("@Lớp", St.Grade);@grade", st.Grade); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; int rows = Command.executenOnOnQuery ();int rows = command.ExecuteNonQuery(); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; trả lại hàng;return rows; 5. Sửa Thôn tin Sinh Sinh Vin Vào CSDL public static int updateStudent (mysqlConnection Connect, student st) { & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Chuỗi sql = "Cập nhật sinh viên đặt full_name = @fullname, Age = @age, Lớp = @grade WHER ID_STUDENT = @IDSTUDENT"; deleteStudent(MySqlConnection connect, int idStudent){ }String sql = "Delete from Student where id_student = @idStudent"; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Lệnh mysqlcommand = new mysqlCommand ();new MySqlCommand(); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; lệnh.connection = Kết nối; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Command.CommandText = SQL; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; lệnh.parameter.addwithValue ("@idstudent", St.IdStudent);@idStudent", idStudent); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; int rows = Command.executenOnOnQuery ();int rows = command.ExecuteNonQuery(); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; trả lại hàng;return rows; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; } 4. Chèn Sinh Viên Vào CSDL
8. Kết luận: Qua bài học này, tôi đã giới thiệu cho các bạn cách để thực hiện các truy vấn, thao tác với cơ sở dữ liệu MySql thông qua đối tượng MySqlCommand và thực hiện các phương thức ExecuteNonQuery(), ExecuteReader(),… Đây chính là phần lập trình back-end tương tác với CSDL MySql các bạn có thể áp dụng nhiều trong các ứng dụng của riêng mình. Chúc các bạn thành công!.cơ sở dữ liệu MySql thông qua đối tượng MySqlCommand và thực hiện các phương thức ExecuteNonQuery(), ExecuteReader(),… Đây chính là phần lập trình back-end tương tác với CSDL MySql các bạn có thể áp dụng nhiều trong các ứng dụng của riêng mình. Chúc các bạn thành công!. |