Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cập nhật cơ sở dữ liệu mysql từ hàng đã chọn datagridview

Đây chỉ là mã giả về những gì bạn cần làm

string cmdText = @"UPDATE t_pi_Clients
                 SET ClientName = @ClientName,
                     PostalAdd = @PostalAdd,
                     Telephone = @Telephone,
                     Fax = @Fax,
                     .... etc ....
                 WHERE ClientCode = @ClientCode";
using(MySqlConnection cn = new MySqlConnection(.....))
using(MySqlCommand cmd = new MySqlCommand(cmdText, cn))
{
    cn.Open();
    cmd.Parameters.AddWithValue("@ClientName", txtboxClientName.Text);
    cmd.Parameters.AddWithValue("@PostalAdd", txtboxPostalAddress.Text);
    ....etc etc...
    cmd.Parameters.AddWithValue("@ClientCode", textboxClientCode.Text);
    int rowsUpdated = cmd.ExecuteNonQuery();
    if(rowsUpdated > 0) 
    {
        // extract the code that loads DataGridView1 from the Form_Load
        // and create a reusable method that you could call from here
    }
}

Đầu tiên, bạn tạo một văn bản lệnh sql với UPDATE mệnh đề. Tôi giả định rằng khóa chính của bạn (trường xác định duy nhất các bản ghi của bạn) là ClientCode trường.

Sau đó, tạo kết nối và lệnh. Điền vào bộ sưu tập tham số lệnh với các tham số theo yêu cầu của văn bản, lấy các giá trị từ TextBox.
Gọi ExecuteNonQuery để lưu trữ các giá trị.

Nếu bạn thành công thì bạn cần cập nhật hoặc tải lại chế độ xem dữ liệu của mình. Cách tiếp cận tốt nhất sẽ là đặt từng ô dạng lưới của hàng hiện tại với các giá trị mới từ các hộp văn bản hoặc bạn có thể chỉ cần trích xuất mã được sử dụng trong form_load để điền vào lưới và tạo một phương thức mới mà bạn có thể gọi từ nút sự kiện nhấp chuột. (Nhưng điều này có thể chậm hơn nếu bạn có nhiều bản ghi)




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách làm cho mysql chấp nhận các kết nối bên ngoài

  2. Cách nhập binlog MySQL có chứa INSERT của trường TIMESTAMP với giá trị mặc định CURRENT_TIMESTAMP

  3. kết nối mariadb J Aurora Fast chuyển đổi dự phòng áp dụng

  4. Spring JDBC Template- Cách truy xuất nhiều kết quả với nhiều tham số với một truy vấn duy nhất

  5. mysql_fetch_array bỏ qua hàng đầu tiên