相关疑难解决方法(0)

如何在SQL Server Management Studio中查看已执行的查询?

我是SQL Server Management Studio的新手,我想知道:有没有办法查看哪些查询已针对数据库运行?

在活动监视器中,有一个"最近昂贵的查询"报告,但我猜这不是所有的查询,因为我没有看到我运行的那些.

我正在运行SQL Server Express 2008 v 10.0.1600.22.

ssms sql-server-express

27
推荐指数
4
解决办法
14万
查看次数

SQL Server事务日志资源管理器/分析器

在SQL Server中回滚事务后有哪些可用选项?

我想有人删除10,000行错误之前制定一个计划.

sql-server

11
推荐指数
1
解决办法
3万
查看次数

如何查看sql server中执行脚本的历史记录及其执行时间和计数?

我想找到在我的sql服务器中运行的脚本的执行时间和执行计数。

例如,我在每个执行的脚本上添加了 / * searchThisString * / 。然后我使用下面的代码来找出它们。

SELECT  dest.text, deqs.last_execution_time, deqs.execution_count 
FROM    sys.dm_exec_query_stats AS deqs
        CROSS APPLY sys.dm_exec_sql_text(deqs.sql_handle) AS dest
WHERE   deqs.last_execution_time > '<time>'
        AND dest.text LIKE '%<searchThisString>%';
Run Code Online (Sandbox Code Playgroud)

然而,有一种情况该代码失败了。如果脚本仅包含“更新”查询,则上面的代码无法找到它:

例如,

example_script.sql

/*searchThisString*/
update <table> set colA = 'A' where colB = 'B'
Run Code Online (Sandbox Code Playgroud)

那么上面的代码就无法找到这个执行的脚本了。

更新: 我刚刚发现 sys.dm_exec_cached_plans 实际上可以找到所有已执行的脚本。但是,它没有执行脚本的last_execution_time和execution_count信息。

我尝试使用以下代码将其与 sys.dm_exec_query_stats 结合起来(但它也不起作用)。我认为因为 sys.dm_exec_query_stats 没有此执行的查询,所以当我将它们连接起来时,它会为 last_execution_time 返回“null”,并为execution_count 返回“null”。

SELECT  dest.text, deqs.last_execution_time, deqs.execution_count 
FROM    sys.dm_exec_cached_plans AS decp
        CROSS APPLY sys.dm_exec_sql_text(decp.plan_handle) AS dest
LEFT JOIN sys.dm_exec_query_stats As deqs
ON decp.plan_handle = deqs.plan_handle
WHERE   deqs.last_execution_time …
Run Code Online (Sandbox Code Playgroud)

sql sql-server ssms

5
推荐指数
1
解决办法
2万
查看次数

SQL Server:我们可以找出谁重命名了数据库吗?

SQL Server 2012中是否有任何方法可以识别谁更改了数据库名称?是否有任何审计日志或某些有用的东西?

sql-server

3
推荐指数
1
解决办法
1127
查看次数

表:插入和更新了多少行

如何查找表中插入的行数以及最近更新的行数?今天我们有一个数据仓库存储过程,它更新了一个表。我不关心哪些行,只关心每个事务的计数(插入/和更新)。我们的数据库没有 CDC/或 CT。有没有办法查询 Sys DMV 或日志?我正在继承遗留代码,因此将来会添加手动日志记录,只是好奇 SQL Server 是否在任何地方都有此自动日志记录。

sql-server transactions sql-server-2016

3
推荐指数
1
解决办法
3446
查看次数

SQL Server Management Studio - 运行命令的历史记录

我之前已经更改了一个表,添加了一个列并修改了一个存储过程.

我不记得究竟哪个表和哪个存储过程,是否有一些登录sql管理工作室有关在特定数据库中进行了哪些更改?

我已经尝试了这里描述的内容如何在SQL Server Management Studio中查看查询历史记录,但我没有找到对数据库所做的更改

sql-server ssms

1
推荐指数
1
解决办法
2524
查看次数