sql server-SQL Server怎么批量更新提高效率?

问题描述

SQL Server怎么批量更新提高效率?

C#
将ID=1,ID=2,ID=3······ID=10这十条数据的NAME字段都改成ABC
用foreach操作很耗时间,有没有什么批量的方法提高效率?

解决方案

sql语句优化一下,where id between 或者 in(1,10)

解决方案二:

SQL SERVER的批量插入与批量更新
Sql Server根据记录集批量更新数据库
如何update sql 批量更新(sql server)

解决方案三:

楼上说的对,使用between可以批量更新,效率远远高于一条条更新。

解决方案四:

先把你要update的数据的id值存到一个临时表,然后直接:

update xx
from xx
inner join temp_tb
on tb.id = xx.id
set name = 'abc'

时间: 2024-10-27 11:21:44

sql server-SQL Server怎么批量更新提高效率?的相关文章

用迅雷5.9批量下载提高效率!

&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp;   迅雷5--"光速般"的智能下载软件.迅雷下载号称拥有比目前用户常用的下载软件快7-10倍的下载速度,它是一款基于P2SP技术的下载工具,能够有效降低的死链比例,也就是说这个链接如果是死链,迅雷会搜索到其它链接来下载所需用的文件:支持多结点断点续传:支持不同的下载速率:同时迅雷还可以智能分析出哪个节点上上传速度最快,来下载提高用户的下载速度:支

sql server 2005 select update 复杂计算 批量更新 悬赏100分

问题描述 sql server 2005 select update 复杂计算 批量更新 悬赏100分 sql server 2005 select update 复杂计算 批量更新 表结构如上图:ID,日期,代码,开盘,最高,最低,振幅3 求:前三日的振幅,并批量更新. 算法:代码相同,按日期排序,向前取三条,从最高里面找到最大的数,从最低里面找到最小的数. (最高 - 最低) / 开盘 = 振幅.开盘是当前行固定向前数三行的开盘值. 以更新第4条为例: (9 - 1) / 1 = 第4条的振

sql server 批量更新问题的解决方法

Statement 和PreparedStatement的问题 Statement sm = cn.createStatement(); sm.addBatch(sql1); sm.addBatch(sql2); ... sm.executeBatch() 用Statement的好处就是每次可以直接传一个SQL语句进去,不用管那么多.可是在数据量比较大的时候,应该会对效率有影响.不建议使用. PreparedStatement ps教程 = cn.preparedStatement(sql);

在SQL Server里为什么我们需要更新锁

原文:在SQL Server里为什么我们需要更新锁 今天我想讲解一个特别的问题,在我每次讲解SQL Server里的锁和阻塞(Locking & Blocking)都会碰到的问题:在SQL Server里,为什么我们需要更新锁?在我们讲解具体需要的原因前,首先我想给你介绍下当更新锁(Update(U)Lock)获得时,根据它的兼容性锁本身是如何应对的. 一般来说,当执行UPDATE语句时,SQL Server会用到更新锁(Update Lock).如果你查看对应的执行计划,你会看到它包含3个部分

SQL Server中数据行批量插入脚本的存储实现_MsSql

无意中看到朋友写的一篇文章"将表里的数据批量生成INSERT语句的存储过程的实现".我仔细看文中的两个存储代码,自我感觉两个都不太满意,都是生成的单行模式的插入,数据行稍微大些性能会受影响的.所在公司本来就存在第二个版本的类似实现,但是是基于多行模式的,还是需要手工添加UNAION ALL来满足多行模式的插入.看到这篇博文和基于公司数据行批量脚本的存储的缺点,这次改写和增强该存储的功能.    本存储运行于SQL Server 2005或以上版本,T-SQL代码如下: IF OBJEC

mfc vc6 0 sql 数据库-请问当SQL Server数据库中数据有更新的时候,如何通知到MFC上?

问题描述 请问当SQL Server数据库中数据有更新的时候,如何通知到MFC上? 编程环境VC6.0,在MFC对话框中添加了一些控件,并且能够显示数据库中内容, 使用的是CRecordSet类,读取完数据库后就调用Close关闭数据库了. 我想请问的是,如何实时的显示数据库内容? 或者当数据库数据有变更的时候才显示到 MFC的控件上? 解决方案 参考这个试试 SQL Server 2008 表数据改变后发送消息 http://blog.csdn.net/sliphades/article/de

Oracle\MS SQL Server Update多表关联更新

原文:Oracle\MS SQL Server Update多表关联更新 一条Update更新语句是不能更新多张表的,除非使用触发器隐含更新.而表的更新操作中,在很多情况下需要在表达式中引用要更新的表以外的数据.我们先来讨论根据其他表数据更新你要更新的表   一.MS    SQL    Server   多表关联更新      sql server提供了update的from 子句,可以将要更新的表与其它的数据源连接起来.虽然只能对一个表进行更新,但是通过将要更新的表与其它的数据源连接起来,就

SQL语句实现SQL Server 2000及Sql Server 2005日志收缩(批量)_MsSql

复制代码 代码如下: DECLARE @name VARCHAR(25) DECLARE @SQL VARCHAR(1000) DECLARE @logid INT DECLARE sysdatabase_name CURSOR FOR SELECT name FROM master.dbo.sysdatabases OPEN sysdatabase_name FETCH NEXT FROM sysdatabase_name INTO @name WHILE @@FETCH_STATUS = 0

SQL Server中数据行批量插入脚本的存储实现

无意中看到朋友写的一篇文章"将表里的数据批量生成INSERT语句的存储过程的实现".我仔细看文中的两个存储代码,自我感觉两个都不太满意,都是生成的单行模式的插入,数据行稍微大些性能会受影响的.所在公司本来就存在第二个版本的类似实现,但是是基于多行模式的,还是需要手工添加UNAION ALL来满足多行模式的插入.看到这篇博文和基于公司数据行批量脚本的存储的缺点,这次改写和增强该存储的功能. 本存储运行于SQL Server 2005或以上版本,T-SQL代码如下: IF OBJECT_I