利用SqlBulkCopy类一次插入多条数据,即将一个表直接插入数据库。

首先,新建一个表,要保证表中的列名与数据库表的字段保持一致。

如果数据库一张TableMenuRole表,ID自增,MenuID,RoleID。

则需新建一张这样的表。

DataTable table = new DataTable();

创建一个自增的列ID

DataColumn col = new DataColumn("ID");

col.AutoIncrement=true;

col.AutoIncrementStep=1;//自增1

col.AutoIncrementSpeed=1;

table.Columns.Add(col);//将创建的列加入Table

//给表创建两列

table.Columns.Add("MenuID");

table.Columns.Add("RoleID");

//给表添加10条数据

for(int i=0;i<10;i++)

{

  DataRow row =table.NewRow();

  row["MenuID"]=i+5;

  row["RoleID"]=i+10;

  table.Rows.Add(row);

}

table.AcceptChanges();

表已经创建好了,现在将表作为参数插入到数据库
 SqlBulkCopy sqlbulkcopy = new SqlBulkCopy(SqlHelper.ConnectionString, SqlBulkCopyOptions.UseInternalTransaction);
sqlbulkcopy.DestinationTableName = "TableMenuRole";//数据库中的表名
try
{
sqlbulkcopy.WriteToServer(table);
}
catch (Exception e)
{
return false;
}
  finally
{
sqlbulkcopy.Close();
 }
 return true;

最新文章

  1. 门面模式的典型应用 Socket 和 Http(post,get)、TCP/IP 协议的关系总结
  2. 【集合框架】JDK1.8源码分析之TreeMap(五)
  3. cas单点登录时报Invalid credentials
  4. C# Bitmap 复制
  5. pthread_cond_wait的原子性
  6. http://m.blog.csdn.net/article/details?id=8237698
  7. ASP.NET过滤HTML标签只保留换行与空格的方法
  8. 演练:Office 编程(C# 和 Visual Basic)
  9. Eclipse中文语言包下载
  10. opencv在VS2010命令行编译过程
  11. wampserver 自定义站点
  12. 【Android基础】点击Back键退出应用程序
  13. UT源代码123
  14. Gitlab CI 自动部署 asp.net core web api 到Docker容器
  15. Jungle Roads(kruskar)
  16. struts 中自定义action访问方法
  17. 排队时延(Queuing delay)
  18. .NET Core微服务之基于Ocelot+Butterfly实现分布式追踪
  19. java从pdf中提取文本
  20. [Swift]LeetCode877. 石子游戏 | Stone Game

热门文章

  1. Koa中使用cookies
  2. Mongodb $in $or 性能比较
  3. 记无法用被动方式登录远程linux主机的原因
  4. Chrome 扩展
  5. 环形数组 最大子段和 dp
  6. 使用js Math.random()函数生成n到m间的随机数字
  7. 阿里云ECS服务器 常见问题(1)
  8. c扩展开发
  9. SiteCore Experience Analytics-体验分析
  10. css selectors tips