一次性把DataTable中的数据插入数据库
发布日期:2021-11-15 03:27:17
浏览次数:2
分类:技术文章
本文共 1592 字,大约阅读时间需要 5 分钟。
- /// <summary>
- /// 初始化一个DataTable类型的数据源
- /// <para/>Author : AnDequan
- /// <para/>Date : 2011-3-14
- /// </summary>
- /// <returns>Source</returns>
- private DataTable InitSource()
- {
- DataTable dtUserAdd = new DataTable();
- dtUserAdd.Columns.Add(new DataColumn("ID", typeof(int)));
- dtUserAdd.Columns.Add(new DataColumn("UserName", typeof(string)));
- dtUserAdd.Columns.Add(new DataColumn("UserPwd", typeof(string)));
- DataRow drTemp = null;
- for (int i = 0; i < 100; i++)
- {
- drTemp = dtUserAdd.NewRow();
- drTemp["ID"] = 0;
- drTemp["UserName"] = "测试" + (i + 1);
- drTemp["UserPwd"] = "密码" + (i + 1);
- dtUserAdd.Rows.Add(drTemp);
- }
- return dtUserAdd;
- }
- /// <summary>
- /// 一次性把DataTable中的数据插入<a href="http://lib.csdn.net/base/mysql" class='replace_word' title="MySQL知识库" target='_blank' style='color:#df3434; font-weight:bold;'>数据库</a>
- /// <para/>Author : AnDequan
- /// <para/>Date : 2011-3-14
- /// </summary>
- /// <param name="source">DataTable数据源</param>
- /// <returns>true - 成功,false - 失败</returns>
- public bool AddDataTableToDB(DataTable source)
- {
- SqlTransaction tran = null;//声明一个事务对象
- try
- {
- using (SqlConnection conn = new SqlConnection("server=.;uid=sa;pwd=sa;database=Test;"))
- {
- conn.Open();//打开链接
- using (tran = conn.BeginTransaction())
- {
- using (SqlBulkCopy copy = new SqlBulkCopy(conn, SqlBulkCopyOptions.Default, tran))
- {
- copy.DestinationTableName = "AnDequan.dbo.[User]"; //指定服务器上目标表的名称
- copy.WriteToServer(InitSource()); //执行把DataTable中的数据写入DB
- tran.Commit(); //提交事务
- return true; //返回True 执行成功!
- }
- }
- }
- }
- catch (Exception ex)
- {
- if (null != tran)
- tran.Rollback();
- //LogHelper.Add(ex);
- return false;//返回False 执行失败!
- }
- }
转载地址:https://blog.csdn.net/qq_30469045/article/details/52895289 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月22日 21时46分06秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
XStream xml与javabean之间的互转
2019-04-27
Kubernetes基础:MacOS上设定Dashboard
2019-04-27
#力扣 MySQL196. 删除重复的电子邮箱 @FDDLC
2019-04-27
Seekbar 属性 记录
2019-04-27
textview设置独特字颜色和背景颜色
2019-04-27
背景+带边框(圆角)的textview怎么设置
2019-04-27
第二技能
2019-04-27
算法的设计
2019-04-27
JAVA Freemarker(9)---常见语法大全
2019-04-27
Java MyBatis(1)--- Generator 详解
2019-04-27
Java MyBatis(2)--- generatorConfig.xml详解与运行
2019-04-27
VueJS(5)---初步练习(5题)
2019-04-27
mysql(3)-- 修改root密码命令小结
2019-04-27
JQuery(3)--冒泡效果
2019-04-27
异常(2)-- UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/项目包名
2019-04-27
Android软键盘(1)---输入法界面管理(打开/关闭/状态获取)
2019-04-27
Android动态设置view的高度宽度
2019-04-27
css3 属性 text-overflow 实现截取多余文字内容 以省略号来代替多余内容
2019-04-27
vue 事件总线EventBus的概念、使用以及注意点
2019-04-27