Cách UPDATE dữ liệu từ database MySQL bằng C#
Hướng dẫn cách sử dụng Prepared Statements trong C# để cập nhật dữ liệu trong bảng MySQL một cách an toàn và hiệu quả với nhiều tham số.
Trong bài viết này, bạn sẽ học cách kết nối đến database MySQL và sử dụng C# với Prepared Statements để thực hiện câu lệnh UPDATE, giúp cập nhật các bản ghi trong bảng theo nhiều tham số.
using System;
using MySql.Data.MySqlClient;
class Program
{
static void Main(string[] args)
{
// Thông tin kết nối đến database MySQL
string connectionString = "Server=localhost;Database=test_db;User ID=root;Password=password;";
// Kết nối đến database
using (MySqlConnection conn = new MySqlConnection(connectionString))
{
conn.Open();
// Câu lệnh UPDATE với Prepared Statement
string updateQuery = "UPDATE students SET name = @name, age = @age WHERE id = @id";
using (MySqlCommand cmd = new MySqlCommand(updateQuery, conn))
{
// Thêm các tham số
cmd.Parameters.AddWithValue("@name", "Jane Doe");
cmd.Parameters.AddWithValue("@age", 22);
cmd.Parameters.AddWithValue("@id", 1);
// Thực hiện câu lệnh UPDATE
int rowsAffected = cmd.ExecuteNonQuery();
// In số lượng bản ghi đã được cập nhật
Console.WriteLine($"{rowsAffected} bản ghi đã được cập nhật.");
}
}
}
}
Giải thích chi tiết từng dòng code:
using MySql.Data.MySqlClient;
: Import thư việnMySql.Data.MySqlClient
để làm việc với MySQL trong C#.string connectionString = "Server=localhost;Database=test_db;User ID=root;Password=password;";
: Chuỗi kết nối chứa thông tin cần thiết để kết nối với MySQL như server, database, user, và password.using (MySqlConnection conn = new MySqlConnection(connectionString))
: Khởi tạo kết nối đến MySQL.conn.Open();
: Mở kết nối đến database.string updateQuery = "UPDATE students SET name = @name, age = @age WHERE id = @id";
: Câu lệnh UPDATE với các tham số.using (MySqlCommand cmd = new MySqlCommand(updateQuery, conn))
: Khởi tạoMySqlCommand
với câu lệnh UPDATE và kết nối.cmd.Parameters.AddWithValue("@name", "Jane Doe");
: Thêm tham số@name
với giá trị là "Jane Doe".cmd.Parameters.AddWithValue("@age", 22);
: Thêm tham số@age
với giá trị là 22.cmd.Parameters.AddWithValue("@id", 1);
: Thêm tham số@id
với giá trị là 1.int rowsAffected = cmd.ExecuteNonQuery();
: Thực thi câu lệnh UPDATE và lấy số lượng bản ghi đã được cập nhật.Console.WriteLine($"{rowsAffected} bản ghi đã được cập nhật.");
: In số lượng bản ghi đã được cập nhật ra màn hình.
Yêu cầu hệ thống:
- .NET Framework hoặc .NET Core
- MySQL.Data (thư viện để kết nối MySQL)
Cách cài đặt thư viện để chạy được đoạn mã C# trên:
Cài đặt thư viện MySql.Data
qua NuGet:
Install-Package MySql.Data
Lời khuyên:
- Đảm bảo MySQL server đang chạy trước khi thực hiện kết nối.
- Kiểm tra kỹ các thông tin kết nối để tránh lỗi.
- Sử dụng Prepared Statements để bảo vệ ứng dụng khỏi SQL injection.