//方法一:用DataAdapter方法,优点:不用写insert语句且不用关心values后边的各字段的形式,如要不要加单引号之类的;缺点:插入一条记录的效率不及写单纯insert语句SqlConnection conn = ConnectDB(server, db);string sql = "select * from " + tableName;SqlDataAdapter da = new SqlDataAdapter(sql, conn);SqlCommandBuilder scb = new SqlCommandBuilder(da);//SqlCommandBuilder根据insertCommand构造    updatecommand和deletecommandDataTable dt = new DataTable();exeTable(conn, dt, sql);DataRow dr = dt.NewRow(); dr.ItemArray = columnValues; dt.Rows.Add(dr); da.Update(dt); conn.Close(); // 方法二:单纯写insert语句插入一条记录,优点:单条数据插入效率高 缺点:需要注意sql语句的构造和sql语句中参数的类型 string sql = "insert into 表名 values(" + 值1+ "," + 值2+ ",'" + 值3+ "',"+ 值4+ "," + 值5+ "," + 值6+",@参数1,'" + 值7+ "','"+ 值8+ "')"; SqlParameter param = new System.Data.SqlClient.SqlParameter("@参数1", SqlDbType.Image); param.Value = 值9; SqlConnection conn = sqlHelper.ConnectDB(); SqlCommand cmd = new System.Data.SqlClient.SqlCommand(sql, conn); if (param != null) cmd.Parameters.Add(param); cmd.ExecuteNonQuery(); conn.Close(); //方法三:插入大批量数据时用SqlBulkCopy,单条记录插入效率较慢  DataTable dt = new DataTable(); dt.Columns.Add("列名1", typeof(string)); dt.Columns.Add("列名2", typeof(byte[])); DataRow dr = dt.NewRow(); dr["列名1"] = 值1; dr["列名2"] = 值2; dt.Rows.Add(dr); dr = dt.NewRow(); dr["列名1"] = 值3; dr["列名2"] = 值4; dt.Rows.Add(dr); SqlBulkCopy bulk = new System.Data.SqlClient.SqlBulkCopy(conn); bulk.DestinationTableName=目标表名; bulk.BatchSize=dt.Rows.Count; bulk.ColumnMappings.Add("列名1",目标列名1); bulk.ColumnMappings.Add("列名2",目标列名2); bulk.WriteToServer(dt); bulk.Close(); conn.Close();

转载于:https://www.cnblogs.com/nora/p/8064207.html

往数据库的表中插入新行相关推荐

  1. 钢琴键盘excel_如何通过键盘在Excel中插入新行?

    钢琴键盘excel If you are a keyboard ninja, then you hate having to move your hands from the keyboard for ...

  2. 使用SQL语句向表中插入多行数据

    继上次使用SQL Server Management Studio创建一个教学数据库和教师关系表之后,再次使用SQL向表中添加数据. 图形界面就不多说了,自己摸索一下就会了,这次还是继续新建查询打开编 ...

  3. python脚本:向表中插入新数据,删除表中最旧的数据

    一张表存储历史数据,最多存储HISTORY_TABLE_MAX_ROWS条数据,当表中数据未达到HISTORY_TABLE_MAX_ROWS,直接插入:如果达到的话需要保证插入新数据的时候将最旧的数据 ...

  4. 要从Java往数据库某个表中插入100万行数据,要求速度尽量快,方案和优化思路?

    1.利用mybatis的foreach拼接动态aql或者在java中写循环拼接,将数据分组拼接成大sql,比如可以每1万行数据拼接为一个insert语句,只要连接1000次数据库即可. 2.设置myb ...

  5. navicat使用查询向表中插入一行记录_SQL--每日一解------Bulk Insert 快速插入

    SQL INSERT INTO 语句 INSERT INTO 语句用于向表中插入新记录. SQL INSERT INTO 语法 INSERT INTO 语句可以有两种编写形式. ① 第一种形式无需指定 ...

  6. SQL INSERT INTO 语句(在表中插入)

    SQL INSERT INTO 语句 INSERT INTO 语句用于向表中插入新的数据行. SQL INSERT INTO 语法 INSERT INTO 语句可以用两种形式编写. 第一个表单没有指定 ...

  7. 在Sql2005中,向表中插入数据时遇到uniqueidentifier列,如何插入数据?

    在Sql2005中,向表中插入数据时遇到uniqueidentifier列,如何插入数据? 原文 http://blog.csdn.net/quou2002/article/details/59650 ...

  8. 使用SQL语句在表中插入date类型的数据

    如果想使用SQL语句在数据库的表中插入一个date类型的数据,可以使用 insert into user values (null, '小红', 1234, 24, '男', 20200808); 注 ...

  9. sqlite多行插入_在SQLite中插入多行

    我试图在SQLite(最新版本)表中插入多行,但是会抛出一个错误 从HERE得到这个想法,这里是我的sql查询: INSERT INTO "Track" SELECT " ...

最新文章

  1. IJCAI 2019 论文解读 | 基于超图网络模型的图网络进化算法
  2. mysql ignore 1 lines_MYSQL使用笔记(1)
  3. 关于布隆过滤器的所有信息:利用Hash实现的索引方案
  4. python的装饰器迭代器与生成器_详解python中的生成器、迭代器、闭包、装饰器
  5. python sklearn 梯度下降法_Python- sklearn之梯度下降算法原理
  6. 有哪些开源html5的组态软件,FScada组态软件
  7. SQL 经典50题(题目+解答)(1)
  8. Bumped!详解—(Dijkstra堆优化,优先队列实现,结构体重载运算符)
  9. ae合成设置快捷键_必收藏的AE常用快捷键(全不全,看过才知道)
  10. websphere修改协议为TLS1.2
  11. 2021年中国面料行业现状分析:行业毛利率为11.9%[图]
  12. I2C时序分析及模拟实现I2C主设备驱动
  13. 信息化管理技术-制造执行系统(MES) – MES项目的规划和应用
  14. 使用python将csv文件数据可视化
  15. 后台弹出页面或模式窗口
  16. 一名职业操盘手对交易的理解
  17. 一文读懂:快速入门机器学习,基础向
  18. VScode跑街商场网页排版
  19. Oracle数据库的启停命令,脚本启停oracle数据库
  20. 2021年国内高校教职,求职过程和结果如何?

热门文章

  1. 人工智能和中国学霸比赛做卷子居然输了?
  2. 清华“姚班”迎来00后,高校与企业共破AI人才荒
  3. 无线通信原理及协议栈(ZigBee、蓝牙等)解析
  4. xp系统怎样安装传真服务器,XP系统下如何安装传真机 XP系统安装传真机的详细步骤[图文教程]...
  5. android打开项目更换版本,android1.6项目,换成其他包的方法,及修改默认启动虚拟机的版本...
  6. java 内部类 返回值_Java基础第10天+形式参数和返回值的问题、包、导包、权限修饰符、常见的修饰符、内部类(局部内部类,成员内部类,匿名内部类)...
  7. ant vue 树形菜单横向显示_Vue--组件Ant- 树形结构菜单
  8. CAS机制中的ABA问题
  9. 哈理工计算机学院孙广路,我校举行人工智能前沿领域-计算机视觉专题报告会...
  10. 检测html输入框是否一样,如何测试一个输入框