sql >> Databáze >  >> RDS >> Sqlserver

Rychle vložte 2 miliony řádků do SQL Serveru

  1. Myslím, že je lepší číst data textového souboru v DataSet

  2. Vyzkoušejte SqlBulkCopy - Hromadné vkládání do SQL z aplikace 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();
    

nebo

po provedení kroku 1 nahoře

  1. Vytvořte XML z DataSet
  2. Předejte XML do databáze a proveďte hromadné vkládání

podrobnosti si můžete prohlédnout v tomto článku:Hromadné vkládání dat pomocí C# DataTable a funkce SQL serveru OpenXML

Ale není testován s 2 miliony záznamů, bude to dělat, ale spotřebovává paměť na počítači, protože musíte načíst a vložit 2 miliony záznamů.



  1. Čtyři způsoby použití aplikace Microsoft Access

  2. Jak STRCMP() funguje v MariaDB

  3. Jak získat ID posledního aktualizovaného řádku v MySQL?

  4. Jak funguje justify_days() v PostgreSQL