【批量添加】-拼接sql字符串 标签: 批量添加 2015-12-13 17:49 2070人阅读 评论(33)
现在做的一个项目需要用到批量添加,但是封装的底层没有这个方法,所以自食其力,自己来写。我们用的是拼接sql字符串的方法来实现功能。
具体实现流程:首先将需要的数据存储到实体的list中,然后将这个list传给我们批量添加的方法。批量添加的方法首先应该打开数据库连接,然后开始进行sql字符串的拼接,拼接完成后,调用sqlhelper方法进行添加。
具体代码如下:
#region 批量添加实体
/// <summary>
/// 批量添加实体
/// </summary>
/// <param name="staffscores"></param>
/// <returns></returns>
public bool Insert(List<YzQueryStaffScoresEntity> staffscores)
{
//打开数据库连接
SQLHelper sqlHelper = new SQLHelper("data source=192.168.22.239;initial catalog=YzEvaluationSystem;persist security info=True;user id=sa;password=xxx;", true); StringBuilder sbSql = new StringBuilder(); //拼接字符串,添加方法
sbSql.Append("insert into YzQueryStaffScoresEntity(ID,StaffID,StaffName,WorkEfficiency,ProfessionalEthics,BusinessAbility,HonestyDiscipline,WorkPerformance,other1,other2,Number,TotalScores,IsUsed) values"); //循环实体list,进行拼接
if (staffscores.Count > 1)
{
for (int i = 0; i < staffscores.Count - 1; i++)
{
sbSql.Append("('" + staffscores[i].ID + "',");
sbSql.Append("'" + staffscores[i].StaffID + "',");
sbSql.Append("'" + staffscores[i].StaffName + "',");
sbSql.Append(staffscores[i].WorkEfficiency + ",");
sbSql.Append(staffscores[i].ProfessionalEthics + ",");
sbSql.Append(staffscores[i].BusinessAbility + ",");
sbSql.Append(staffscores[i].HonestyDiscipline + ",");
sbSql.Append(staffscores[i].WorkPerformance + ",");
sbSql.Append(staffscores[i].other1 + ",");
sbSql.Append(staffscores[i].other2 + ",");
sbSql.Append(staffscores[i].Number + ",");
sbSql.Append(staffscores[i].TotalScores + ",");
sbSql.Append(1);
sbSql.Append("),");
}
sbSql.Append("('" + staffscores[staffscores.Count - 1].ID + "',");
sbSql.Append("'" + staffscores[staffscores.Count - 1].StaffID + "',");
sbSql.Append("'" + staffscores[staffscores.Count - 1].StaffName + "',");
sbSql.Append(staffscores[staffscores.Count - 1].WorkEfficiency + ",");
sbSql.Append(staffscores[staffscores.Count - 1].ProfessionalEthics + ",");
sbSql.Append(staffscores[staffscores.Count - 1].BusinessAbility + ",");
sbSql.Append(staffscores[staffscores.Count - 1].HonestyDiscipline + ",");
sbSql.Append(staffscores[staffscores.Count - 1].WorkPerformance + ",");
sbSql.Append(staffscores[staffscores.Count - 1].other1 + ",");
sbSql.Append(staffscores[staffscores.Count - 1].other2 + ",");
sbSql.Append(staffscores[staffscores.Count - 1].Number + ",");
sbSql.Append(staffscores[staffscores.Count - 1].TotalScores + ",");
sbSql.Append(1);
sbSql.Append(")");
}
//调用sqlhelper方法进行添加。
int flag = sqlHelper.ExecuteNonQuery(sbSql.ToString(), System.Data.CommandType.Text);
if (flag > 0)
{
return true;
}
else
{
return false;
} }
#endregion
一开始说要自己写sql拼接字符串的时候还觉得,哇塞,这肯定特别难,我光听说了,从来没有见过啊,结果一见之下,发现非常的简单。所以,不怕不知道,就怕不知道!各位加油
【批量添加】-拼接sql字符串 标签: 批量添加 2015-12-13 17:49 2070人阅读 评论(33)的更多相关文章
- svn总结 标签: svn开源软件 2015-05-09 17:31 513人阅读 评论(11) 收藏
说到SVN,就不得不说CVS,CVS 是一个C/S系统,是一个常用的代码版本控制软件.主要在开源软件管理中使用.与它相类似的代码版本控制软件有subversion.多个开发人员通过一个中心版本控制系统 ...
- 【批量添加】-SqlBulkCopy语句 标签: sql批量添加 2015-12-20 14:39 1367人阅读 评论(33)
上篇博客我们介绍了通过拼接sql字符串的方法来对sql数据库进行批量添加,但是通过语句拼接insert语句有个缺点,就是每次最多只能添加1000条.当时我们另外一个界面也用到了批量添加,但是这个界面轻 ...
- C# SQL 整表插入 分类: C# 2014-09-17 16:18 369人阅读 评论(2) 收藏
说明: (1)表A的一部分数据插入到表B (2)DataAccess 类,是放在DAL层下的底层类; da.StrConnection 写在DataAccess类中; //整表插入方法 private ...
- 机房收费系统——技术总结 标签: vb数据库技术 2014-09-07 22:29 1153人阅读 评论(30)
说完了经验,再谈谈技术方面,其实对于技术,师哥师姐们都已经写了好多博客,这也是我在敲机房几乎没写这方面的博客的原因,不过别人的再好也是别人的,下面说说自己的. (一)数据库的设计 其实虽然说是数据库的 ...
- C# 字符串常用操作 分类: C# 2014-08-22 15:07 238人阅读 评论(0) 收藏
string str1 = "C#操作字符串<几种常见方式>如下"; string str2 = "C#操作字符串"; //比较字符串 Co ...
- c++ 字符串流 sstream(常用于格式转换) 分类: C/C++ 2014-11-08 17:20 150人阅读 评论(0) 收藏
使用stringstream对象简化类型转换 C++标准库中的<sstream>提供了比ANSI C的<stdio.h>更高级的一些功能,即单纯性.类型安全和可扩展性.在本文中 ...
- 使用JavaScriptSerializer序列化集合、字典、数组、DataTable为JSON字符串 分类: 前端 数据格式 JSON 2014-10-30 14:08 169人阅读 评论(0) 收藏
一.JSON简介 JSON(JavaScript Object Notation,JavaScript对象表示法)是一种轻量级的数据交换格式. JSON是"名值对"的集合.结构由大 ...
- 杭电acm刷题(3):1062,Text Reverse 标签: 杭电acm 2017-05-15 08:26 126人阅读 评论(0)
Problem Description Ignatius likes to write words in reverse way. Given a single line of text which ...
- [ITOO]动态建库 标签: 库数据库mysql 2016-07-17 21:23 241人阅读 评论(2) 收
最近一直在做权限系统的动态建库,动态建库,说白了就是在你点击"注册"按钮的时候,根据你输入的信息,来创建一个企业所需要的数据库的过程,因为现阶段并没有提供购买等功能,所以暂时咱们是 ...
随机推荐
- java反编译工具使用记录
最近试了四个反编译工具,总结一下. 先说结论,最有效果的是Procyon Decompile.使用方法:https://blog.csdn.net/u010762551/article/details ...
- Django项目:CRM(客户关系管理系统)--51--42PerfectCRM实现AJAX全局账号注册
#urls.py """PerfectCRM URL Configuration The `urlpatterns` list routes URLs to views. ...
- CF 578B "Or" Game
传送门 解题思路 题意大概是给你一个数列,可以进行k次操作,每次操作可以选择一个数乘x,问操作后的或的最大值.根据位运算,位数越高答案越优,所以贪心的使这k次操作全都放到一个数上,这样的结果肯定较优. ...
- 开户项目的sql查询语句备查
查询全国所有的券商名录 SELECT id,security,province,city,borough FROM t_security GROUP BY security ; 查询某个省份的所有券商 ...
- CentOS7 安装 Nginx 1.12.1
安装准备: nginx 依赖的一些 lib 库: yum install gcc-c++ yum install pcre pcre-devel yum install zlib zlib-devel ...
- vue+ElementUI项目中,input只能输入正整数的验证
代码如下: <el-input v-model="famount" placeholder="请输入内容" @keyup.native=&q ...
- ThinkPHP实现定时执行任务的两种方法 - 博客频道 - CSDN.NET
在平常的项目中我们总是会遇到需要将某个方法任务定时执行的问题,定时执行方法任务如果我们拥有服务器的权限,我们可以直接在服务器设置定时任务,例如在Windows的任务计划程序中进行设置,在Linux中编 ...
- LUGOU P3907 圈的异或
传送门 解题思路 其实就是找出所有的环判断,因为数据范围很小直接暴力做,注意要判断自环. 代码 #include<iostream> #include<cstdio> #inc ...
- VS插件集合
VS的强大不仅仅在于VS本身的强大. 同时,也有很多好用的插件,可以帮助我们更好的编辑代码, 提高效率. https://marketplace.visualstudio.com/search?tar ...
- hdfs 的存储空间扩展
问题:之前集群上每个节点的的大小为50G, 但是硬盘容量是160G的, 不明白为什么才50个G: 后来发现是因为dfs.data.dir设置的问题,该目录下挂载的磁盘空间的大小就会作为该节点的容量.. ...