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

Chèn 2 triệu hàng vào SQL Server nhanh chóng

  1. Tôi nghĩ bạn đọc dữ liệu của tệp văn bản trong DataSet thì tốt hơn

  2. Dùng thử SqlBulkCopy - Chèn hàng loạt vào SQL từ Ứng dụng C #

    // connect to SQL
    using (SqlConnection connection = new SqlConnection(connString))
    {
        // make sure to enable triggers
        // more on triggers in next post
        SqlBulkCopy bulkCopy = new SqlBulkCopy(
            connection, 
            SqlBulkCopyOptions.TableLock | 
            SqlBulkCopyOptions.FireTriggers | 
            SqlBulkCopyOptions.UseInternalTransaction,
            null
            );
    
        // set the destination table name
        bulkCopy.DestinationTableName = this.tableName;
        connection.Open();
    
        // write the data in the "dataTable"
        bulkCopy.WriteToServer(dataTable);
        connection.Close();
    }
    // reset
    this.dataTable.Clear();
    

hoặc

sau khi thực hiện bước 1 ở trên cùng

  1. Tạo XML từ DataSet
  2. Chuyển XML vào cơ sở dữ liệu và thực hiện chèn hàng loạt

bạn có thể kiểm tra chi tiết bài viết này:Chèn hàng loạt dữ liệu bằng cách sử dụng C # DataTable và chức năng OpenXML của máy chủ SQL

Nhưng nó không được thử nghiệm với 2 triệu bản ghi, nó sẽ làm nhưng tiêu tốn bộ nhớ trên máy vì bạn phải tải 2 triệu bản ghi và đưa nó 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 nhanh nhất để tìm các tính năng không dùng nữa vẫn được sử dụng trong phiên bản máy chủ SQL (Ví dụ T-SQL)

  2. Các tính năng bảo mật trong SQL Server 2017

  3. Làm mới bảng máy chủ SQL với ít gián đoạn hơn bằng cách sử dụng chuyển đổi phân vùng

  4. Cách tìm vị trí tệp mặc định cho tệp dữ liệu và tệp nhật ký trong SQL Server

  5. Cách tạo máy chủ được liên kết cho SQL Server 2008, nơi chúng tôi có cơ sở dữ liệu từ năm 2000 và 2005