zoukankan      html  css  js  c++  java
  • 数据库百万条添加的方法

    思路:

    .net 创建临时表,然后用SqlBulkCopy把临时表一次性复制的真正的数据表中;

    代码如下:

    protected void Button1_Click(object sender, EventArgs e)
    {
    
        using (SqlConnection connection = new SqlConnection("Data Source=(local);Integrated Security=true;Initial Catalog=FIO;"))
        {
            connection.Open();               
            DataTable newProducts = MakeTable();
            using (SqlBulkCopy bulkCopy = new SqlBulkCopy(connection))
            {
                bulkCopy.DestinationTableName = "dbo.test";
                try
                {
                    bulkCopy.WriteToServer(newProducts);
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }
        }
    }
    
    private static DataTable MakeTable()
    {
        // 创建临时表
        DataTable newProducts = new DataTable("newtest");
        // 给表创建列
        DataColumn productID = new DataColumn();
        productID.DataType = System.Type.GetType("System.Int32");
        productID.ColumnName = "id";
        productID.AutoIncrement = true;
        newProducts.Columns.Add(productID);
    
        DataColumn productName = new DataColumn();
        productName.DataType = System.Type.GetType("System.String");
        productName.ColumnName = "name";
        newProducts.Columns.Add(productName);
    
        // 给列添加行
        for (int i = 0; i < 100000; i++)
        {
            DataRow dataRow = newProducts.NewRow();
            dataRow["name"] =  Guid.NewGuid().ToString();
            newProducts.Rows.Add(dataRow);
        }
        return newProducts;
    }
    
  • 相关阅读:
    terraform入门操作指南
    linux常用命令
    pssh用法范例
    nginx共享内存使用
    Redis监控指标[转]
    xargs用法笔记
    systemd用法记录一
    esxcli部分常用命令
    lua自定义功能模块table类型转string类型
    curl用法笔记
  • 原文地址:https://www.cnblogs.com/sntetwt/p/4612985.html
Copyright © 2011-2022 走看看