您可以使用下面的存储过程来解决问题。
从收集数据库的以下查询中找到数据空间 ID 和分区 ID
SELECT PartitionId, DataspaceId FROM dbo.tbl_Project where PartitionId >0 and ProjectName = ‘<tfs project name>’
使用上面查询中的 partitionID 和 dataspaceID 在 fields 表上查看是否存在适当的 FailingSince 字段
SELECT * FROM tbl_TestFieldsEx WHERE PartitionId =<partitionID> AND DataspaceId = <dataspaceID>
这不应返回包含 FailingSince 字段的行
更新表格如下
insert into @p3 values(N'StackTrace',12,0,1,1)
insert into @p3 values(N'FailingSince',12,0,1,1)
insert into @p3 values(N'Comment',12,0,1,1)
insert into @p3 values(N'ErrorMessage',12,0,1,1)
insert into @p3 values(N'OutcomeConfidence',6,0,1,1)
insert into @p3 values(N'TestRunSystem',12,1,0,1)
insert into @p3 values(N'AttemptId',8,0,1,1)
insert into @p3 values(N'UnsanitizedTestCaseTitle',12,0,1,1)
insert into @p3 values(N'UnsanitizedAutomatedTestName',12,0,1,1)
insert into @p3 values(N'TestResultGroupType',12,0,1,1)
insert into @p3 values(N'MaxReservedSubResultId',8,0,1,1)
exec prc_AddTestExtensionFields @partitionId=<partitionID>,@dataspaceId=<dataspaceID>,@fieldsTable=@p3
这应该至少更新一行
再次运行上面读取的查询以查看 FailingSince 字段是否存在。
SELECT * FROM tbl_TestFieldsEx WHERE PartitionId =<partitionID> AND DataspaceId = <dataspaceID>
这不应返回包含 FailingSince 字段的行