如何找到给定临时表的用户?

How to find the user of a given temp table?

提问人:Ullan 提问时间:11/14/2023 最后编辑:marc_sUllan 更新时间:11/14/2023 访问量:45

问:

我正在尝试找出在 SQL Server 2019 中创建特定临时表的用户。

CREATE TABLE #Test123
(
    id INT,
    name VARCHAR(1)
);

我从旧的堆栈流帖子中找到了以下解决方案。例如,临时表“Test123”由用户“ms123”创建,但下面的查询将其显示为“sa”

SELECT 
    SUSER_NAME(CONVERT(INTEGER, OBJECTPROPERTYEX(t.OBJECT_ID, 'OwnerId')))
FROM 
    tempdb.sys.tables AS t
WHERE 
    t.name LIKE N'#Test123%';

我尝试了以下查询,但它没有显示用户详细信息,

USE tempdb;

SELECT * 
FROM sys.tables 
WHERE name LIKE '%#Test123%';

提前致谢

SQL Windows 身份验证 临时表 sql-server-2019

评论

0赞 Dai 11/14/2023
你怎么知道这个表不是由登录的用户创建的?sa
0赞 Ullan 11/14/2023
我在使用我的用户名登录到 SQL Server 后创建了该临时表,
0赞 Vasya 11/14/2023
请记住,临时表是临时的,因此它可能不再位于 tempdb 中
1赞 Charlieface 11/14/2023
sqlperformance.com/2014/05/t-sql-queries/......

答: 暂无答案