如何跟踪 SQL 更新的进度?

2024-02-02

假设我有一个更新,例如:

  UPDATE [db1].[sc1].[tb1] 
  SET c1 = LEFT(c1, LEN(c1)-1) 
  WHERE c1 like '%:'

此更新基本上将遍历数百万行并修剪冒号(如果 c1 列中有冒号)。

我如何跟踪表中的进展情况?

Thanks

这是 SQL Server 2008


您可以使用 sysindexes 表,它跟踪索引的更改量。因为这是在原子更新中完成的,所以它没有机会重新计算统计数据,所以rowmodctr将继续增长。有时,这在小表中并不明显,但对于数百万人来说,它会显示出来。

-- create a test table
create table testtbl (id bigint identity primary key clustered, nv nvarchar(max))

-- fill it up with dummy data. 1/3 will have a trailing ':'
insert testtbl
select
    convert(nvarchar(max), right(a.number*b.number+c.number,30)) + 
    case when a.number %3=1 then ':' else '' end
from master..spt_values a
inner join master..spt_values b on b.type='P'
inner join master..spt_values c on c.type='P'
where a.type='P' and a.number between 1 and 5
-- (20971520 row(s) affected)

update testtbl
set nv = left(nv, len(nv)-1)
where nv like '%:'

现在在另一个查询窗口中,连续运行以下命令并观察 rowmodctr 的不断上升。rowmodctr vs rows如果您知道自己在哪里,则可以让您知道自己在做什么rowmodctr需要最终成为。在我们的例子中,这一数字是刚刚超过 200 万的 67%。

select rows, rowmodctr
from sysindexes with (nolock)
where id = object_id('testtbl')

请不要在表上运行(nolock)计数查询itself当它正在更新时。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何跟踪 SQL 更新的进度? 的相关文章

  • JOOQ 忽略具有默认值的数据库列

    看来JOOQ完全忽略了数据库列的默认值 既不会更新 ActiveRecord 对象 也不会在 INSERT 时跳过此列 相反 它尝试将其设置为 NULL 这在 NOT NULL 列上失败 Example CREATE TABLE bug f
  • 如何绘制部分位图圆弧?类似于圆形进度轮,但具有显示得越来越多的位图。

    我正在寻找的是一种以顺时针圆形方式显示图像的视图 当进度为 25 时 应显示前 90 度 当进度为 100 时 应绘制完整的 360 度 它与使用 canvas drawArc 非常接近 但此方法仅适用于 Paint 对象 不适用于位图 其
  • 如何查找列中未使用的ID? [复制]

    这个问题在这里已经有答案了 可能的重复 SQL查询查找丢失的序列号 https stackoverflow com questions 1057389 sql query to find missing sequence numbers 我
  • SQL如何将两个日期之间一小时内的事件相加并显示在一行中

    我正在使用 C 和 SQL Server 2005 开发一份报告 我只需显示我们每小时获得的点击次数 桌子很大 输出应如下所示 Row Date Time Hit Count 1 07 05 2012 8 00 3 2 07 05 2012
  • 如何避免这两个 SQL 语句之间出现死锁?

    我有两个存储过程在单独的线程中运行 在 SQL Server 2005 上运行 一个过程将新行插入到一组表中 另一个过程从同一组表中删除旧数据 这些过程在表上遇到了死锁DLevel and Model 这是架构 source barrams
  • INNER JOIN 后从多个表获取最大日期

    我有以下两个表 table 1 ID HOTEL ID NAME 1 100 xyz 2 101 pqr 3 102 abc table 2 ID BOOKING ID DEPARTURE DATE AMOUNT 1 1 2013 04 1
  • SELECT DISTINCT HAVING 计算唯一条件

    我已经搜索过这个问题的答案 但找不到如何根据条件获取这个不同的记录集 我有一个包含以下示例数据的表 Type Color Location Supplier Apple Green New York ABC Apple Green New
  • 复制数据库的最佳方法是什么?

    当我想要复制数据库时 我总是创建一个新的空数据库 然后将现有数据库的备份恢复到其中 然而 我想知道这是否真的是最不容易出错 最不复杂且最有效的方法 可以跳过创建空数据库的步骤 您可以在恢复过程中创建新数据库 这实际上是我所知道的克隆数据库最
  • 如何将列中的天数添加到 DB2 中的当前日期?

    我正在编写此 SQL 来动态计算一定的天数 如下所示 但我不知道如何让它工作 因为我不断收到错误 select Current Date Dynamic numbr of days calculation here from TableNa
  • 从 SQL Server 读取十进制值时出现溢出异常

    我想知道这是一个错误还是我做错了什么 我正在加载值SqlDataReader来自 SQL Server 2008 数据库 但在某些情况下 它无法将 SQL 值转换为 net 值 NET 4 0 我已将其追溯到一个测试用例 它演示了实际问题
  • 无重复组合的交叉连接

    我知道这个问题与这个问题非常相似 对称交叉连接 https stackoverflow com questions 12490244 symmetric cross join还有这个 sql 中交叉连接的组合 不是排列 https stac
  • db2中如何删除所有非数字字母

    我在 DATA 列 varchar 中有一些数据 如下所示 Nowshak 7 485 m Maja e Korabit Golem Korab 2 764 m Tahat 3 003 m Morro de Moco 2 620 m Cer
  • VS 13/VS 15 - 无法导入 SQL 片段

    我想在中创建 SQL 片段VS2013 and VS2015 我不知道为什么 但我在导入时遇到错误 在两个 VS 中 C sql snippet Missing or unspecified Language attribute 我的片段
  • 如何在 DataColumn.Expression 中使用 IF/ELSE 或 CASE?

    我有一个包含 1 列的表 状态 我想添加另一列名为 Action 的列 其值如下 如果 Status Yes 则 Action Go 否则 Action Stop 我使用以下代码添加到 操作 列中 但它不起作用 myDataTable Co
  • Postgres 中 -Infinity 和 Infinity 的适当值

    在一种情况下 我们必须在 Postgres DB 中存储 无穷大和 无穷大的值 应该考虑什么合适的值 如果没有 请建议最合适的替代方案 你实际上可以使用 infinity and infinity for FLOAT4 and FLOAT8
  • 如何使用sql脚本更改列的属性

    如何使用 sql 脚本更改列的属性 这是我尝试过但出现错误的方法 ALTER TABLE dbo tblBiometricPattern COLUMN BiometricPatternID TINYINT NOT NULL IDENTITY
  • 如何在Oracle中从表中选择列,*?

    我正在创建很多脚本 有时为了检查表是否根据我的需要进行更新 我会即时编写几个 SELECT 语句 在 SQL SERVER 中你可以这样写 SELECT Column1 FROM MY TABLE 出于可见性原因 这很有用 但是这似乎在 O
  • Oracle - 获取星期几

    今天是星期二 为什么当我运行这个 SQL 语句时 它说今天不是星期二 SELECT CASE WHEN TO CHAR sysdate Day Tuesday THEN Its Tuesday ELSE Its Not Tuesday EN
  • 每行中非空列的计数

    我有一个包含 4 列的表 在第 5 列中我想存储前 4 列中有多少个非空列的计数 例如 其中 X 是任意值 Column1 Column2 Column3 Column4 Count X X NULL X 3 NULL NULL X X 2
  • 批量插入不适用于 NULL 数据

    当我从 CSV 文件将批量数据插入到表中时 它不起作用 显示错误 第 2 行第 9 列的批量加载数据转换错误 类型不匹配或指定代码页的字符无效 csv 文件中的第 9 列值为空 我该如何处理这个问题 根据这些信息 我认为目标表的特定字段被定

随机推荐

  • Yahoo Weather、Yahoo GeoPlant、Google Weather 或其他使用 javascript 连接的 API?

    我需要一种方法来使用 javascript 获取某个城市的当前天气 我最好使用哪个 API 或者还有其他应用程序可以使用ajax请求来获取当前天气吗 GeoPlanit 需要一个 appid 所以我还没有尝试过 而 yahoo 天气是一个
  • 使用水豚运行并行硒测试

    背景 我有一套Capybara针对我的 Rails 3 应用程序运行的集成测试 对于我正在使用的测试套件的其他部分Rspec 我的 Mac OSX 开发机器上有一个 selenium 2 6 0 独立服务器集线器 java jar sele
  • 使用 RoutedEventArgs 传递变量?

    我有以下类 并且想要将文本变量作为 RoutedEventArgs 传递 public class CloseableTabItem TabItem String text public CloseableTabItem This styl
  • ssh 卡在 SSH2_MSG_KEX_DH_GEX_REQUEST(1024<7680<8192) 发送上

    我可以通过网络管理器和 openconnect 插件连接到 VPN 但是当我连接到公司的服务器时 我得到以下日志 root XSign ssh ssh username xxx v OpenSSH 7 1p1 OpenSSL 1 0 2d
  • 选择另一个表中没有外键的主键

    为了简化起见 我有两个使用外键一对多关联的表 例如 Users table id name Actions table id user id 一个用户可能有很多操作 也可能没有 我需要一个 sql select 返回在 actions 表中
  • SpEL @ConditionalOnProperty 字符串属性为空或 null

    目前 我在 applications yaml 文件中的 String 属性条件下创建 dataSource bean 时遇到问题 理想情况下 我只想在 application yaml 文件中设置了 url 时才创建 dataSource
  • 类型错误:match.loader.options.plugins 不是一个函数

    我正在尝试在 ReactJS 应用程序中使用 tailwindCSS 这些是脚本命令package json file scripts start craco start build craco build test craco test
  • 如何检查字符是否正确

    我有一堆字符 想要删除所有不是 的内容 E 和 G 我尝试使用这个 if buffer get buffertest G E 但遇到了类型不兼容的问题 这个根本问题是按位 OR 运算符和 Java 运算符优先级层次结构的错误使用 这种类型的
  • 制作向后兼容的 WCF 服务

    TLDR 如何创建向后兼容的 WCF 服务 也就是说 当我在服务器端部署新版本的服务时 旧版本上的所有客户端都可以仍然使用该服务 我正在创建一个 Web 服务 允许客户端应用程序获取插件列表 我至少会进行一次手术 例如FindPlugins
  • 序列化 System.Globalization.CultureInfo 类型的对象时检测到循环引用

    我正在使用 jquery 调用一个 Web 服务 该服务返回一个包含几个表的数据集 这工作正常 直到我需要设置我的网络方法来接受参数 我在客户端反映了这一点 data paramname paramval 现在 当 webmethod 返回
  • 在一个 SQL 文件中创建多个过程?

    我想在一个 SQL 文件中创建多个过程 即 create or replace procedure pro1 as begin null end pro1 create or replace procedure pro2 as begin
  • 如何在 JavaScript 中禁用 ondblclick?

    是否可以禁用ondblclick event document ondblclick function return false 或者如果您不想在整个站点范围内这样做 document getElementById something on
  • NSUndoManager、核心数据和选择性撤消/重做

    我正在开发一个核心数据应用程序 该应用程序具有相当大的托管对象层次结构 类似于树 创建基础对象时 它会创建一些子对象 这些子对象又创建自己的子对象 依此类推 这些子对象中的每一个都可以使用 NSURLConnections 收集信息 现在
  • 当应用程序 jar 位于 hdfs 中时 Spark-submit 不起作用

    我正在尝试使用 bin spark submit 运行 Spark 应用程序 当我在本地文件系统中引用我的应用程序 jar 时 它可以工作 但是 当我将应用程序 jar 复制到 hdfs 中的目录时 出现以下异常 警告 跳过远程 jar h
  • 如何在select2下拉框中添加HTML内容

    我用过选择2插件 http ivaynberg github io select2 用于标签输入 这是我的基本工作的小提琴 http jsfiddle net learner73 LfhL33kc 1 我需要在下拉框中显示每个选项 标签的
  • 无法在 electro-forge 中使用 electro-packager 进行构建

    我已经使用 electro forge 创建了一个默认项目 当我尝试使用命令打包我的项目时electron forge 进程退出并出现以下错误 我究竟做错了什么 我按照说明来到了开球台电子锻造 https github com electr
  • 参数化类的原始使用

    我编写了一个辅助方法 用于通过反射获取指定类型的静态字段的值 代码工作正常 但我收到 参数化类的原始使用 在线警告 final List
  • 如何删除菜单栏中的表情符号、符号和听写?

    如何删除菜单栏中的表情符号 符号和听写 我在 Xcode 中找不到它 也没有在那里看到它 但在应用程序中却看到了 这是一个更好的解决方案 不需要 破解 编辑菜单文本 只需将以下方法添加到您的 AppDelegate func applica
  • 如何使用 Android Handler 更新 UI 线程中的 TextView?

    我想更新一个TextView来自 Android 应用程序中的异步任务 执行此操作的最简单方法是什么Handler 还有一些类似的问题 比如 Android 使用 Handler 更新 TextView https stackoverflo
  • 如何跟踪 SQL 更新的进度?

    假设我有一个更新 例如 UPDATE db1 sc1 tb1 SET c1 LEFT c1 LEN c1 1 WHERE c1 like 此更新基本上将遍历数百万行并修剪冒号 如果 c1 列中有冒号 我如何跟踪表中的进展情况 Thanks