Sql大批量导入数据 sql server大批量数据导入 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1、禁用索引2、BCP或者其他工具也可以,基本上性能不会相差非常巨大。3、导入后启用索引 直接通过sql语句来插入数据把,比如bulk insert。下面的帖子里,插入800w条数据,只要1分钟:你也可以看看这个帖子:请教BULK INSERT时,如何插入额外的列http://bbs.csdn.net/topics/390642912?page=1#post-396087204 数据是web页面上传递的,表单里有短信内容(可以很长)什么的,然后就放到数据库里。 bcp 插入的表本身就是队列表,现在也是1000条一插。刚刚可能是sql数据库缓存了,100条/s,现在有2000-4000条左右.还有米有更高效的方法?using (SqlBulkCopy sb = new SqlBulkCopy(constr, SqlBulkCopyOptions.FireTriggers)){ sb.DestinationTableName = "tSMSContent"; Stopwatch sw = new Stopwatch(); sw.Start(); while (flag) { for (int i = 0; i < 1000; i++) { DataRow dr = dt.NewRow(); dr["SMSContent"] = Guid.NewGuid();//模拟短信内容 dr["CreateTime"] = DateTime.Now; dt.Rows.Add(dr); } index++; sb.WriteToServer(dt); dt.Rows.Clear(); label1.Invoke((MethodInvoker)(() => { label1.Text = (index * 1000 * 1000 / sw.ElapsedMilliseconds).ToString(); })); }} 呵呵,你的这种实现方式,已经很不错了,批量操作,性能已经很快了。上面提到的bcp不太适合你这种情况,bcp适合通过文件的方式,导入,虽然bcp更快。 如何查询每个月销售情况(报表) 这句话什么意思 笔试中的一道SQL题,感兴趣的来看看 怎么着生成一个日期列表啊 select和set的效率问题 数据库设计问题 求助!以前安装sqlsever卸载之后无法安装,有知道的告诉点建议吧 求助:在客户端倒出数据生成execl文件,并execle文件保存在客户端. 使用ADO.NET对SQL Server 编程出现的问题 把SQL查询出来的某一字段内容变成字段名,且这一字段内容是动态变化的,谢谢大家 诺基亚603安装软件证书过期 SQL2000中的数值转换问题
2、BCP或者其他工具也可以,基本上性能不会相差非常巨大。
3、导入后启用索引
http://bbs.csdn.net/topics/390642912?page=1#post-396087204
刚刚可能是sql数据库缓存了,100条/s,现在有2000-4000条左右.
还有米有更高效的方法?using (SqlBulkCopy sb = new SqlBulkCopy(constr, SqlBulkCopyOptions.FireTriggers))
{
sb.DestinationTableName = "tSMSContent";
Stopwatch sw = new Stopwatch();
sw.Start();
while (flag)
{
for (int i = 0; i < 1000; i++)
{
DataRow dr = dt.NewRow();
dr["SMSContent"] = Guid.NewGuid();//模拟短信内容
dr["CreateTime"] = DateTime.Now;
dt.Rows.Add(dr);
}
index++;
sb.WriteToServer(dt);
dt.Rows.Clear();
label1.Invoke((MethodInvoker)(() =>
{
label1.Text = (index * 1000 * 1000 / sw.ElapsedMilliseconds).ToString();
}));
}
}
呵呵,你的这种实现方式,已经很不错了,批量操作,性能已经很快了。上面提到的bcp不太适合你这种情况,bcp适合通过文件的方式,导入,虽然bcp更快。