• 如何使用asp.net2.0的UpdateBatchSize高效上传文件


    使用UpdateBatchSize效率真的很高,我做了一个小demo,希望大家在项目中灵活的使用它,代码如下提供DEMO下载

    Code
    protected void Button1_Click(object sender, EventArgs e)
            {
                ListBox1.Items.Clear();

                SqlConnection conn 
    = new SqlConnection(WebConfigurationManager.ConnectionStrings["demoConnectionString"].ToString());
                SqlCommand selectComm 
    = new SqlCommand("select * from product", conn);
                SqlCommand updateComm 
    = new SqlCommand("update product set remark=@remark", conn);
                updateComm.Parameters.Add(
    "@remark", SqlDbType.VarChar, 200"remark");
                updateComm.UpdatedRowSource 
    = UpdateRowSource.None;

                SqlDataAdapter sda 
    = new SqlDataAdapter();
                sda.SelectCommand 
    = selectComm;
                sda.UpdateCommand 
    = updateComm;
                DataSet ds 
    = new DataSet();
                sda.Fill(ds);
                
    //for (int i = 1; i < 10; i++)
                
    //{
                
    //    UpdateData(sda, ds, i);
                
    //}
                UpdateData(sda, ds, 300);
            }
            
    public void UpdateData(SqlDataAdapter sda, DataSet ds, int recordCount)
            {
                
    foreach (DataRow row in ds.Tables[0].Rows)
                {
                    row[
    "remark"= "当前时间:" + DateTime.Now.ToString();
                }
                
    try
                {
                    sda.UpdateBatchSize 
    = recordCount;
                    
    long oldTicks = DateTime.Now.Ticks / TimeSpan.TicksPerMillisecond;
                    sda.Update(ds);
                    
    long ticksSpan = (DateTime.Now.Ticks / TimeSpan.TicksPerMillisecond - oldTicks) / 1000;
                    ListBox1.Items.Add(
    "UpdateBatchSize=" + recordCount.ToString() + "时,用时:" + ticksSpan.ToString() + "");
                }
                
    catch (Exception ex)
                {
                    ListBox1.Items.Add(ex.Message);
                }
                
    finally
                {

                }
            }

     源码下载:点击这里

  • 相关阅读:
    洛谷 P1934 封印
    洛谷 P2426 删数
    洛谷 P3399 丝绸之路
    SQL SERVER镜像配置,无法将 ALTER DATABASE 命令发送到远程服务器实例的解决办法
    Step7:SQL Server 多实例下的复制
    Step6:SQL Server 数据变更时间戳(timestamp)在复制中的运用
    Step5:SQL Server 跨网段(跨机房)FTP复制
    Step4:SQL Server 跨网段(跨机房)复制
    Step3 SQL Server 通过备份文件初始化复制
    Step2:SQL Server 复制事务发布
  • 原文地址:https://www.cnblogs.com/hqbird/p/1583273.html
Copyright © 2020-2023  润新知