tfs - TFS 2012 讨论用户
问题描述
我可以在 TFS 数据库中的哪里找到输入讨论项目的用户,如此处所示?我发现讨论项在 WorkItemLongTexts 表上的位置,并且我看到用户数据在 Constants 表上的位置,但我没有看到将两者联系在一起的表或视图。
解决方案
我终于弄清楚了讨论/评论用户和时间戳是如何存储在 TFS 数据库中的。这是一个愚蠢的设计。您必须联合 WorkItemsWere 和 WorkItemsAre 表并加入 WorkItemLongTexts。我探索了“Change Order”和“Rev”列来进行 JOIN,但没有任何意义。相反,您必须在 DATETIMES 之前加入。我通常不会提倡像这样加入,但这是我让它发挥作用的唯一方法。最后,我能够提取所有数据,完成转换并最终将 TFS 放入床中。
如果您有兴趣,请在此处查询...
WITH WorkItems AS (
SELECT ID, PersonId, [Changed Date]
FROM WorkItemsAre
UNION
SELECT ID, PersonId, [Changed Date]
FROM WorkItemsWere
), Discussion AS (
SELECT *
FROM WorkItemLongTexts
WHERE FldID = 54
)
SELECT w.ID, PersonId, NamePart, d.AddedDate, Words
FROM Discussion d
INNER JOIN WorkItems w
ON d.ID = w.ID
AND d.AddedDate = w.[Changed Date]
LEFT OUTER JOIN Constants c
ON w.PersonId = c.ConstID
ORDER BY w.ID, d.AddedDate
推荐阅读
- python-3.x - 将值从列表循环中的另一个字典附加到字典
- matlab - 这个 MATLAB 代码(涉及冒号运算符)是如何解决的?
- javascript - 为什么 remove() 和 removeChild() 不起作用
- excel - 将变量声明为 Excel.Application 时,我无法通过 VBA 启动 Excel 实例,但如果将其声明为对象则可以
- python - 如何使用scrapy获取表格数据
- kubernetes - 列出 kubernetes 中每个命名空间的 pod
- scala - 在类型细化中使用类型构造函数
- c++ - 函数、指针和二维数组
- unity3d - 比较 2 个游戏对象时我在比较什么?
- android-11 - Android 11 对话气泡通知坐标