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

Cách nhanh nhất để chèn giá trị từ datagridview vào cơ sở dữ liệu mysql là gì

Tôi không thể biết điều này sẽ nhanh hơn bao nhiêu, tuy nhiên có những cách tối ưu hóa đơn giản cho truy vấn của bạn

Dim queryInsert As String = "INSERT INTO tbl_shipdetails (ship_date, " & _
                             "item_type, item_code, imei1, imei2)" & _
                             "VALUES(@p1,'@p2,@p3,@p4,@p5)"
Dim cmd = New  MySqlCommand(queryInsert, Myconnect)
cmd.Parameters.Add("@p1", MySqlDbType.VarChar)
cmd.Parameters.Add("@p2", MySqlDbType.VarChar)    
cmd.Parameters.Add("@p3", MySqlDbType.VarChar)    
cmd.Parameters.Add("@p4", MySqlDbType.VarChar)    
cmd.Parameters.Add("@p5", MySqlDbType.VarChar)
For i As Integer = 0 To DataGridView1.Rows.Count - 1
    cmd.Parameters("@p1").Value = DataGridView1.Rows(i).Cells(1).Value
    cmd.Parameters("@p2").Value = DataGridView1.Rows(i).Cells(2).Value 
    cmd.Parameters("@p3").Value = DataGridView1.Rows(i).Cells(3).Value
    cmd.Parameters("@p4").Value = DataGridView1.Rows(i).Cells(4).Value
    cmd.Parameters("@p5").Value = DataGridView1.Rows(i).Cells(5).Value
    cmd.ExecuteNonQuery()
Next

Việc sử dụng các tham số cho phép bạn xây dựng MySqlCommand chỉ một lần bên ngoài vòng lặp và tránh công việc cần thiết để nối các chuỗi. (Không đề cập đến vấn đề của Sql Injection)

Lưu ý rằng tôi đã làm theo gợi ý của bạn trong văn bản sql nơi tất cả các trường của bạn dường như thuộc loại chuỗi (VarChar). Nếu các trường của bạn có kiểu dữ liệu khác nhau thì bạn nên điều chỉnh enum MySqlDbType thành kiểu dữ liệu chính xác của bạn (và chuyển đổi các giá trị đầu vào =



  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 chọn mọi thứ trước / sau một ký tự nhất định trong MySQL - SUBSTRING_INDEX ()

  2. chỉnh sửa danh sách từ dừng đầy đủ văn bản mysql ở đâu?

  3. Dữ liệu quá dài cho cột trong Django trên MySQL

  4. Cách tìm ra kích thước của các Chỉ mục trong MySQL

  5. Có thể lưu trữ hình ảnh, âm thanh, video trong Cơ sở dữ liệu SQL không?