【问题标题】:sp_whoisactive resulting an unknown query: "Insert Into <table_name> select *,%%bmk%% from <table_name> option (maxdop 1)"sp_whoisactive 导致未知查询:“插入 <table_name> select *,%%bmk%% from <table_name> option (maxdop 1)”
【发布时间】:2026-01-05 12:55:01
【问题描述】:

sp_whoisactive 导致未知查询:

insert into <table_name> select *,%%bmk%% from <table_name> option (maxdop 1)

我检查了上面的代码块,但在我的任何程序中都没有找到这个代码。 谁能建议这个查询可能在做什么。

【问题讨论】:

  • 看起来像是在修改表结构 - SSMS 使用这种语法来复制表数据。
  • @Avro - 所以你的意思是有人试图改变表格并导致了这个声明?
  • 这是一个可以肯定的 ddl 语句,也可能是某人创建或重建索引
  • 一个相关的讨论是here ;)。

标签: sql sql-server sql-server-2008 sql-server-2005 sql-server-2008-r2


【解决方案1】:

这是一个正在重建的聚集索引。

%BMK% 是将旧书签映射到新书签的函数。

这里有一个文档讨论了这个过程:https://technet.microsoft.com/en-in/library/cc966402(en-us).aspx

【讨论】:

    【解决方案2】:

    sp_whoisactive 不是内置的 SQL Server 过程。

    它是一个 UPD(使用定义的过程)。

    检查你的数据库或master/msdb上的程序

    【讨论】: